ComboBox - C#
Estarei neste post mostrando como criar um combobox em C#, para o meu projeto darei o nome de ComboBox e a página ASPX de Default.aspx.
Vamos utilizar as principais propriedades destes controles para fazer as validações necessárias.
Primeiro vamos criar o combo na nossa página ASPX, utilizaremos muito código HTML, por isso você têm que ter um bom nível de conhecimento nessa linguagem.
Segue abaixo o código da página ASPX.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ComboBox._Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>ComboBox</title> </head> <body><form id="form1" runat="server"> <asp: ScriptManager ID="ScriptManager1" runat="server" /> <div> <asp:DropDownList id="cbo_mes" runat="server" Width="150"></asp:DropDownList> <asp:RequiredFieldValidator id="vld_rqd_cbo_mes" runat="server" Display="Dynamic" ControlToValidate="cbo_mes" SetFocusOnError="true"> <IMG id="img_cbo_mes" src="../_imagens/validator.gif" style="cursor: help;" runat="server" /> </asp:RequiredFieldValidator> <asp:Button ID="btn_sele" runat="server" Text="Selecionar" CausesValidation="true" /> <asp:Label ID="lbl_mes" runat="server"></asp:Label> </div> <asp:ValidationSummary ID="vld_sum" runat="server" EnableViewState="False" HeaderText="Atenção:" ShowMessageBox="True" ShowSummary="False" /> </form> </body> </html> |
Vamos as explicações das principais propriedades:
As propriedade id e runat serão utilizadas em todos os controles de nossa aplicação
Propriedade id - Especifica o nome do controle.
Controle asp:DropDownList - Este é o controle combo box, com ele podemos oferecer ao usuário uma lista de dados, para o usuário fazer o selecionamento de apenas um.
Propriedade ControlToValidate - Especifica o controle que será validado.
Propriedade SetFocusOnError - Propriedade se setada true, depois do erro é setado o foco no controle que está sendo validado.
Propriedade style - Estilo que mostra a imagem de interrogação quando passar o mouse.
Propriedade CausesValidation - Especifica se o botão fará a validação dos controle na tela. Se estiver com o valor false não será feito nenhuma validação na tela.
Controle asp:ValidationSummary - Controle que faz a validação e mostra no erro a janela em javascript.
Propriedade HeaderText - Especifica o título da janela para os campos requeridos.
Propriedade ShowMessageBox - Especifica se o controle mostrará a janela ao ocorrer o erro ou não.
Propriedade ShowSummary - Especifica se o erro será mostrado como sumário ao usuário.
Aqui é o final da criação da nossa página aspx, o próximo passo será feito em nosso code behind.
Abaixo como deverá ficar o código.
using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;
namespace ComboBox { public partial class _Default : System.Web.UI.Page {
#region Métodos da página
/// <summary> /// Page load da página /// </summary> protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.CarregarCombo(); }
this.btn_sele.Click += new EventHandler(btn_sele_Click);
}
#endregion Métodos da página
#region Métodos dos controles
/// <summary> /// Método do clique do botão /// </summary> void btn_sele_Click(object sender, EventArgs e) { this.lbl_mes.Text = this.cbo_mes.SelectedItem.Text; }
#endregion Métodos dos controles
#region Métodos
/// <summary> /// Função para carregar o combo /// </summary> private void CarregarCombo() { // Limpa todos os itens do combo this.cbo_mes.Items.Clear(); // Insere os dados no combo box this.cbo_mes.Items.Add(new ListItem("-- Selecione --", "")); this.cbo_mes.Items.Add(new ListItem("Janeiro", "1")); this.cbo_mes.Items.Add(new ListItem("Fevereiro", "2")); this.cbo_mes.Items.Add(new ListItem("Março", "3")); this.cbo_mes.Items.Add(new ListItem("Abril", "4")); this.cbo_mes.Items.Add(new ListItem("Maio", "5")); this.cbo_mes.Items.Add(new ListItem("Junho", "6")); this.cbo_mes.Items.Add(new ListItem("Julho", "7")); this.cbo_mes.Items.Add(new ListItem("Agosto", "8")); this.cbo_mes.Items.Add(new ListItem("Setembro", "9")); this.cbo_mes.Items.Add(new ListItem("Outubro", "10")); this.cbo_mes.Items.Add(new ListItem("Novembro", "11")); this.cbo_mes.Items.Add(new ListItem("Dezembro", "12")); this.cbo_mes.SelectedIndex = 0; }
#endregion Métodos
} } |
Abaixo uma imagem de como ficará a tela ao emitir o erro da validação.
Abaixo um exemplo de como ficará ao passar a validação e carregar o item selecionado no nosso label.
Espero que tenha sido útil.