Introducción al control ListBox de servidor Web

El control de servidor Web ListBox permite a los usuarios seleccionar uno o más elementos de una lista predefinida. Difiere de un control DropDownList en que puede mostrar varios elementos a la vez y en que, opcionalmente, permite que el usuario seleccione varios elementos.

Apariencia del control ListBox

El control ListBox se suele utilizar para mostrar más de un elemento a la vez. Puede controlar la apariencia de la lista de cualquiera de las siguientes maneras:

  • Número de filas que se muestran   Puede establecer que el control muestre un número específico de elementos. Si el control contiene más elementos, aparecerá una barra de desplazamiento vertical.
  • Alto y ancho   Puede establecer el tamaño del control en píxeles. En este caso, el control omite el número de filas establecido y muestra tantas filas como quepan en el alto del control. Algunos exploradores no admiten que se establezca el alto y el ancho en píxeles, y utilizan la configuración de número de filas.

Como en el caso de otros controles de servidor Web, puede utilizar objetos de estilo para especificar la apariencia del control. Para obtener información detallada, vea Personalizar la apariencia de los controles de servidor ASP.NET mediante estilos.

Elementos

En realidad, el control ListBox es un contenedor para los elementos de lista. Cada elemento de lista constituye un objeto independiente con sus propias propiedades:

Propiedad Descripción
Text Texto que se muestra en la lista.
Value Valor asociado a un elemento. Al establecer esta propiedad, puede asociar un valor a un elemento específico sin mostrarlo. Por ejemplo, puede establecer la propiedad Text en el nombre de un empleado y la propiedad Value, en el alias de correo electrónico del empleado.
Selected Valor de tipo Boolean que indica si el elemento está seleccionado. Si configura el control ListBox para que permita varias selecciones, podrá seleccionar más de un elemento.

Para manipular elementos por medio de programación, normalmente se utiliza la colección Items del control ListBox. Items es una colección estándar y es posible agregarle objetos de elementos, eliminar elementos, borrar la colección, etc. Para comprobar qué elementos están seleccionados, puede recorrer la colección y comprobar los elementos individuales.

Por motivos de facilidad de uso, el control ListBox admite también una propiedad denominada SelectedItem. Si se configura el control en modo de selección simple, esta propiedad devuelve el único elemento seleccionado, lo que hace innecesario recorrer toda la colección Items para llegar a la selección actual.

Selección simple y selección múltiple

Normalmente, los usuarios pueden seleccionar un solo elemento de la lista, haciendo clic en él. Si se configura el control ListBox para que permita selecciones múltiples, los usuarios deberán mantener presionada la tecla CTRL o MAYÚSCULAS mientras hacen clic en los elementos que deseen seleccionar.

Enlazar datos al control

Puede utilizar un control ListBox de servidor Web para mostrar una lista de opciones leídas desde un origen de datos. Cada elemento del control ListBox corresponde a un elemento, habitualmente una fila, del origen de datos.

El control muestra un campo del origen. Si lo desea, puede enlazar el control a un segundo campo para establecer el valor (que no se muestra) de un elemento.

Como ocurre con otros controles de servidor Web, puede enlazar a los datos cualquiera de las propiedades del control, tal como el color o su tamaño. Para obtener información detallada, vea Enlace de datos en formularios Web Forms.

Eventos de ListBox

El control ListBox produce un evento SelectedIndexChanged cuando el usuario selecciona un elemento. De forma predeterminada, este evento no provoca que se exponga la página en el servidor, aunque es posible forzar la exposición inmediata si se establece la propiedad AutoPostBack en true. Si se configuró el control ListBox de forma que permita la selección múltiple y el valor de AutoPostBack es true, se expondrá el formulario en el servidor con cada selección. Sin embargo, durante cada acción de ida y vuelta, se conservará la selección actual.

Nota   La capacidad de un control ListBox de exponer en el servidor cuando se activa requiere que el explorador sea compatible con ECMAScript (JScript, JavaScript) y que esté habilitado el uso de secuencias de comandos en el explorador del usuario.

Vea también

Agregar controles ListBox de servidor Web a una página de formularios Web Forms | Agregar elementos a un control de lista de servidor Web | Llenar un control de lista de servidor Web con datos de una base de datos | Determinar la selección en un control de lista de servidor Web | Establecer la selección en un control de lista de servidor Web | Responder a los cambios en un control de lista de servidor Web