Llenar un control CheckBoxList en ASP.Net C#

Veamos como llenar un control CheckBoxList en ASP.NET C# de manera manual o mediante un ciclo desde el servidor.

Un CheckBoxList es un control de asp que permite crear una lista de elementos con un checkbox para cada uno, permitiendo seleccionar más de un elemento al mismo tiempo.

Llenar un control CheckBoxList en ASP

Crear y llenar un CheckBoxList

En una página aspx agregamos un control CheckBoxList con un identificador y permiso de llamada desde el servidor, como lo siguiente:

<asp:CheckBoxList ID="cblElemetos" runat="server" />
  • Mediante runat, permitimos que el control sea accesible desde el servidor.
  • Desde el servidor el elemento se identifica con el ID.

Abrimos el codebehind de la página aspx para llenar el control con código c#, mediante el siguiente código es posible:

ListItem i;
i = new ListItem("Nuevo leon", "1");
cblElemetos.Items.Add(i);
i = new ListItem("Mexico", "2");
cblElemetos.Items.Add(i);
  • Declaramos una variable de tipo ListItem.
  • En cada variable listitem agregamos la descripción y el valor de los elementos.
  • Agregamos la variable listitem al control CheckBoxList.
  • Podemos asignar y agregar n número de elementos.

La forma de llenar este tipo de controles es similar al control DropDownList que vimos en post anteriores.

También podemos llenar este control a partir de un DataTable, realizando el recorrido a la tabla mediante un ciclo.

Como saben un datatable puede se puede crear desde código C# o como resultado de una consulta a la base de datos.

Con el código siguiente podemos llenar el CheckBoxList a partir de un DataTable:

ListItem i;
foreach (DataRow r in tablaUno.Rows)
{
    i = new ListItem(r["Nombre"].ToString(), r["Numero"].ToString());
    cblElemetos.Items.Add(i);
}

El código de asignar y agregar los elementos al control CheckBoxList es similar al visto más arriba, el único cambio es el ciclo que recorre la tabla.

Podría interesarte Obtener CheckBox seleccionados de un CheckBoxList en ASP.Net C#  

La ventaja que tenemos con este método de llenar el control es la reutilización del código, evitando crear líneas de código iguales.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *