Compartir a través de


Ejemplo ComboBox Databinding

Actualización: noviembre 2007

En este ejemplo se muestra cómo enlazar datos a los controles ComboBox y DataGridView.

Para obtener ejemplos e instrucciones para la instalación

  • Siga uno o varios de los procedimientos siguientes:

    • En el menú Ayuda, haga clic en Ejemplos.

      El archivo Léame muestra información sobre los ejemplos.

    • Visite el sitio web Visual Studio 2008 Samples. Están disponibles las versiones de ejemplos más recientes.

    • Busque los ejemplos en el equipo en el que está instalado Visual Studio. De manera predeterminada, los ejemplos y el archivo Léame se instalan en unidad:\Archivos de programa\Microsoft Visual Studio 9.0\Samples\lcid. Para las versiones Express de Visual Studio, todos los ejemplos están en línea.

Para obtener más información, vea Localizar archivos de ejemplo.

.

Nota de seguridad:

En este ejemplo de código se ilustra un concepto y únicamente se muestra el código correspondiente a dicho concepto. Es posible que no cumpla los requisitos de seguridad de un entorno concreto y, por tanto, no debería utilizarse tal y como se muestra. Se recomienda agregar código de seguridad y de control de errores para que los proyectos sean más seguros y sólidos. Microsoft proporciona este ejemplo "tal cual" sin ninguna garantía.

Para ejecutar este ejemplo

  • Presione F5.

Requisitos

Este ejemplo requiere la base de datos de ejemplo Northwind. Para obtener más información, vea Cómo: Instalar y solucionar problemas de componentes de base de datos para ejemplos.

Demostraciones

El código muestra cómo enlazar seis tipos diferentes de orígenes de datos a un control ComboBox. Los datos están enlazados desde:

Cuando se carga el formulario principal, la tabla Products de la base de datos Northwind se recupera en un objetoDataSet mediante una sencilla instrucción Select de SQL. En este momento se crea también un control DataView que proporciona una vista ordenada de la columna ProductName. La tabla Products se carga en otro objeto DataSet utilizando un TableAdapter y BindingSource.

El usuario, a continuación, puede rellenar el control de cuadro combinado estableciendo enlaces con otra matriz de colores, una lista de matrices de formas, una lista de matrices que contiene las divisiones de ventas definidas con la estructura, la tabla de productos que reside en cada conjunto de datos o la vista ordenada de datos. Si el usuario establece enlaces con el conjunto de datos, la vista de datos o la lista avanzada de matrices de divisiones de ventas, cuando se selecciona una entrada en el cuadro combinado, se muestra también un valor asociado para dicha entrada. Si el usuario enlaza con el conector de datos, se sincronizan el cuadro combinado y la vista de la cuadrícula de datos. Al cambiar el valor del cuadro combinado, se desplaza la vista de la cuadrícula de datos al mismo registro. Si se desplaza a través del conjunto de datos de la cuadrícula o utilizando la barra de herramientas de navegación, se actualiza el cuadro combinado.

El formulario principal contiene los controles del cuadro combinado, los controles de botón para cargar datos, dos controles de etiqueta y una cuadrícula para mostrar el origen de datos y el valor seleccionado. Los controles ArrayList, DataSet y DataView permiten asociar un valor a cada elemento mostrado en el control de cuadro combinado. Por ejemplo, si el usuario selecciona la entrada de producto Chai en la tabla de productos enlazada con el cuadro combinado, Chai aparece como la entrada seleccionada, pero su ProductId asociado también estará disponible a través de la propiedad SelectedValue. La propiedad ValueMember permite seleccionar el elemento que contiene el valor asociado. La propiedad DisplayMember permite seleccionar el elemento mostrado en el control de cuadro combinado.

Crear este ejemplo

La mayor parte de este formulario se creó arrastrando componentes a él y, a continuación, utilizando etiquetas inteligentes y la configuración de la ventana Propiedades. A continuación se incluye un resumen sucinto de cómo se puede crear desde el principio la parte DataGridView del formulario:

  1. Cree un proyecto nuevo de aplicación para Windows.

  2. Con Form1 abierto, seleccione la ventana Origen de datos. También se puede activar a través del menú Datos.

  3. En la ventana Orígenes de datos, haga clic en Agregar nuevo origen de datos.

  4. En el Asistente para la configuración de orígenes de datos, elija Base de datos como tipo de origen de datos.

  5. Para la conexión de datos, elija un servidor que tenga Northwind.

  6. El paso siguiente permite guardar la cadena de conexión en un archivo de configuración de la aplicación con establecimiento inflexible de tipos.

    1. En Elija los objetos de base de datos, seleccione la tabla Products.

    2. Haga clic en Finalizar para crear el conjunto de datos con tipo para la base de datos Northwind. Puede ver los resultados en la ventana Orígenes de datos.

  7. En la ventana Orígenes de datos, arrastre la tabla Products hasta Form1.

  8. Como resultado, verá los controles DataGridView y BindingNavigator enlazados a datos agregados a la superficie del diseñador de formularios. También verá NorthwindDataSet, ProductsTableAdaptery ProductsBindingSource que se han agregado a la bandeja de componentes.

Cargar datos dentro del formulario

En este ejemplo, el formulario con datos se carga sin ningún parámetro proporcionado por el usuario. Mediante el Diseñador de DataSet puede aprovechar los DataAdapters reutilizables para llenar dsProducts2.

Cuando arrastre la tabla Empleados desde la ventana Orígenes de datos, Visual Studio automáticamente coloca código para llamar a la consulta predeterminada de TableAdapter del evento Form.Load. En este ejemplo, este código se ha desplazado al método Clic btnDC:

' Fill the Lookup Tables
Me.ProductsTableAdapter.Fill(Me.NorthwindDataSet.Products)

Vea también

Tareas

Cómo: Instalar y solucionar problemas de componentes de base de datos para ejemplos

Cómo: Enlazar un control ComboBox o ListBox de formularios Windows Forms a datos

Conceptos

Orígenes de datos compatibles con formularios Windows Forms

Referencia

ComboBox

DataSource

ArrayList

DataTable

DataView