Llenar un control DropDownList en ASP.Net C#

Desde el servidor es posible llenar un control DropDownList en ASP.Net C#, desde crearlo manualmente o mediante un DataTable.

El control DropDownList es una lista de ASP.Net que permite desplegar una serie de elementos, solo es seleccionable un elemento.

Antes de comenzar con el código, creamos un proyecto web en Visual Studio de tipo WebForm y creamos una página aspx.

Llenar DropDownList manualmente

Agregamos un control DropDownList a la página aspx, utilicemos el código siguiente:

<asp:DropDownList runat="server" ID="ddlLista" />

Abrimos el archivo C# de la página aspx para llenar el control manualmente desde el servidor, agregamos primero el siguiente espacio de nombre.

using System.Web.UI.WebControls;

Con el código siguiente agregamos los elementos a la lista desplegable.

ListItem i;
i = new ListItem("Nuevo leon", "1");
ddlLista.Items.Add(i);
  • Declaramos una variable de tipo ListItem para agregar los valores del elemento.
  • Agregamos a la variable ListItem el mensaje que vera el usuario y el valor del elemento, el valor debe ser único.
  • Al final agregamos el elemento a la lista desplegable.

Podría interesarte Ocultar elementos de un DropdownList en ASP.NET C#  

Para agregar más elemento simplemente repetimos la creación del nuevo elemento y agregarlo a la lista, no es necesario declarar otra variable ListItem.

ListItem i;
i = new ListItem("Nuevo leon", "1");
ddlLista.Items.Add(i);
i = new ListItem("Mexico", "2");
ddlLista.Items.Add(i);
i = new ListItem("Puebla", "3");
ddlLista.Items.Add(i);
Llenar un control DropDownList en ASP.Net C#

Llenar DropDownList desde un DataTable

Utilizaremos el mismo DropDownList agregada con anterioridad a la página aspx.

Desde el código C# podemos realizar lo siguiente para llenar la lista desplegable:

ListItem i;
foreach (DataRow r in tablaUno.Rows)
{
    i = new ListItem(r["Nombre"].ToString(), r["Numero"].ToString());
    ddlLista.Items.Add(i);
}
  • Declaramos una variable de tipo ListItem.
  • Mediante un foreach recorremos el DataTable tablaUno.
  • Asignamos un nuevo elemento en la variable ListItem, establecemos el nombre de la columna que se mostrara al usuario y establecemos la columna con los valores.
  • Al final agregamos el elemento a la lista.
  • El ciclo termina hasta recorrer todas las filas de la tabla.

Obtenemos el mismo resultado como la carga manual.

Llenar DropDownList desde un DataTable

Podemos utilizar el método anterior para llenar lista con muchos elementos, por ejemplo, los estados de un país.

Podría interesarte Cargar datos en GridView a partir de un DataTable en ASP.Net C#  

Observaciones

Puedes llenar un DropDownList a partir de una consulta de base de datos, obteniendo la consulta como un DataTable.

Deja un comentario

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