domingo, 23 de septiembre de 2012

Uso de Hashtable para Checkboxlist en ASP.NET

Para hacer esto escribimos este codigo en el lado del cliente(Default.aspx):
<form id="form1" runat="server">
<div>

<asp:CheckBoxList ID="CheckBoxList1" runat="server">
</asp:CheckBoxList>
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
<br />
<br />
Text: <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<br />    
Value:  <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>
</div>
</form>
Ahora en el lado del servidor utilizaremos la propiedad IsPostBack en la cual inicializamos nuestro HashTable y lo agregamos a un CheckBox, y en el boton indicaremos que items se dieron check junto con sus IDS.
using System.Collections;
public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Label1.Text = string.Empty;
        Label2.Text = string.Empty;
        if (!IsPostBack)
        {
            Hashtable hs = new Hashtable();
            hs.Add("1", "sajjad");
            hs.Add("2", "ahmed");
            hs.Add("3", "imtiaz");
            hs.Add("4", "ghazi");
            hs.Add("5", "sohail");
            hs.Add("6", "zahid");
            hs.Add("7", "irfan");
            CheckBoxList1.DataSource = hs;
            CheckBoxList1.DataValueField = "Key";
            CheckBoxList1.DataTextField = "Value";
            CheckBoxList1.DataBind();
        }
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        Label1.Text = string.Empty;
        Label2.Text = string.Empty;
        foreach (ListItem listitem in CheckBoxList1.Items)
        {
            if (listitem.Selected)
            {
                Label1.Text += listitem.Text + "     ,     ";
                Label2.Text += listitem.Value + "     ,     ";
            }
        }
    }
}

0 comentarios:

Publicar un comentario