Tutorial: Crear una tabla de búsqueda en una aplicación Windows Forms
Las tablas de búsqueda se usan para mostrar información de una tabla basada en el valor de un campo de clave externa de otra tabla. Tomemos como ejemplo una tabla Orders una base de datos de ventas. Cada registro de la tabla Orders incluye un CustomerID que indica el cliente que ha realizado el pedido. El CustomerID es una clave externa que señala a un registro del cliente en la tabla Customers. Cuando se presenta una lista de pedidos (de la tabla Orders), quizás quiera mostrar el nombre real de los clientes, en lugar del CustomerID. Como el nombre de los clientes está en la tabla de clientes y está presentando datos de la tabla de pedidos, necesita crear una tabla de búsqueda que tome el valor de CustomerID en el registro Orders, y usar ese valor para navegar a la relación y devolver un nombre de cliente más legible. Este concepto se conoce como tabla de búsqueda.
Las tareas ilustradas en este tutorial incluyen:
Crear un nuevo proyecto Aplicación Windows.
Crear y configurar un conjunto de datos con el Asistente para la configuración de orígenes de datos.
Seleccionar el control que se va a crear en el formulario al arrastrar elementos desde la ventana Orígenes de datos. Para obtener más información, vea Cómo: Establecer el control que se creará al arrastrar desde la ventana de orígenes de datos.
Crear controles enlazados a datos arrastrando elementos desde la ventana Orígenes de datos hasta un formulario.
Configurar una tabla de búsqueda arrastrando una tabla relacionada a un control enlazado mediante una relación de clave externa.
Requisitos previos
Para completar las tareas de este tutorial, necesitará:
- Acceso a la base de datos de ejemplo Northwind. Para obtener más información, vea Cómo: Instalar bases de datos de ejemplo.
Crear una nueva aplicación para Windows
Para crear el nuevo proyecto de aplicación para Windows
En el menú Archivo, cree un nuevo proyecto.
Asigne al proyecto el nombre LookupTableWalkthrough.
Seleccione Aplicación para Windows y haga clic en Aceptar. Para obtener más información, vea Desarrollar aplicaciones cliente con .NET Framework.
Se crea el proyecto LookupTableWalkthrough y se agrega al Explorador de soluciones.
Crear un nuevo origen de datos
Para crear el origen de datos
En el menú Datos, haga clic en Mostrar orígenes de datos.
En la ventana Orígenes de datos, seleccione Agregar nuevo origen de datos para iniciar el Asistente para configuración de orígenes de datos.
Seleccione Base de datos en la página Elegir un tipo de datos de origen y luego haga clic en Siguiente.
En la página Elegir la conexión de datos realice una de las siguientes operaciones:
Si una conexión de datos a la base de datos de ejemplo Northwind está disponible en la lista desplegable, selecciónela.
O bien
Seleccione Nueva conexión para iniciar el cuadro de diálogo Agregar o modificar conexión.
Si su base de datos requiere una contraseña, seleccione la opción para incluir datos confidenciales y haga clic en Siguiente.
Haga clic en Siguiente en la página Guardar la cadena de conexión en el archivo de configuración de la aplicación.
Expanda el nodo Tables en la página Elija los objetos de base de datos.
Seleccione las tablas Customers y Orders y, a continuación, haga clic en Finalizar.
Se agrega NorthwindDataSet al proyecto y las dos tablas aparecen en la ventana Orígenes de datos.
Crear controles enlazados a datos en el formulario
Para crear controles enlazados en el formulario
Expanda el nodo Customers en la ventana Orígenes de datos.
Cambie el tipo de colocación de la tabla Orders relacionada a Detalles seleccionando Detalles en la lista de controles del nodo Orders. Para obtener más información, vea Cómo: Establecer el control que se creará al arrastrar desde la ventana de orígenes de datos.
Expanda el nodo Orders relacionado y cambie el tipo de colocación de la columna CustomerID por un cuadro combinado, seleccionando ComboBox en la lista de controles, en el nodo CustomerID.
Arrastre el nodo Orders relacionado desde la ventana Orígenes de datos hasta Form1.
Los controles enlazados a datos con etiquetas descriptivas aparecen en el formulario, junto con una barra de herramientas (BindingNavigator) para navegar por los registros. En la bandeja de componentes aparecen NorthwindDataSet, CustomersTableAdapter, BindingSource y BindingNavigator.
Crear la tabla de búsqueda
Para establecer la tabla de búsqueda, configure las propiedades del cuadro combinado CustomerID:
Para crear la funcionalidad de tabla de búsqueda en el formulario
Arrastre el nodo Customers principal desde la ventana Orígenes de datos directamente al cuadro combinado CustomerID en Form1.
Nota
La tabla siguiente es solo para referencia; las propiedades se establecen automáticamente durante la acción de arrastrar del procedimiento anterior.El diseñador establece las siguientes propiedades tal y como se describe en "Explicación del parámetro", más adelante.Según las estructuras de sus tablas, puede necesitar ajustar las propiedades de la tabla de búsqueda para que funcione correctamente.
Propiedad
Explicación del parámetro
DataSource
Visual Studio establece esta propiedad en el elemento BindingSource creado para la tabla que ha arrastrado al control (a diferencia del elemento BindingSource creado al mismo tiempo que el control).
Si necesita realizar un ajuste, establezca esta propiedad en el elemento BindingSource de la tabla con la columna que desea mostrar. (CustomersBindingSource para este tutorial).
DisplayMember
Visual Studio establece esta propiedad en la primera columna tras la clave principal que tiene un tipo de datos String para la tabla que ha arrastrado al control.
Si necesita realizar un ajuste, establezca esta propiedad en el nombre de columna que desea mostrar.
ValueMember
Visual Studio establece esta propiedad en la primera columna que participa de la clave principal, o la primera columna de la tabla si no se ha definido ninguna clave.
Si necesita realizar un ajuste, establezca esta propiedad en la clave principal de la tabla con la columna que desea mostrar.
SelectedValue
Visual Studio establece esta propiedad en la columna original arrastrada desde de la ventana Orígenes de datos.
Si necesita realizar un ajuste, establezca esta propiedad en la columna de clave externa en la tabla relacionada. (CustomerID en la tabla Orders para este tutorial).
Ejecutar la aplicación
Para ejecutar la aplicación
Presione F5.
Navegue por los pedidos y asegúrese de que el cuadro combinado CustomerID muestra CompanyName para cada pedido de la tabla Customers (y no la columna CustomerID de la tabla Orders).
Pasos siguientes
Dependiendo de los requisitos de la aplicación, hay varios pasos que pueden realizarse después de crear un formulario enlazado a datos. Entre las mejoras que podría realizar se incluyen:
Agregar funcionalidad de búsqueda al formulario. Para obtener más información, vea Cómo: Agregar una consulta parametrizada a una aplicación de Windows Forms.
Agregar funcionalidad para devolver actualizaciones a la base de datos. Para obtener más información, vea Tutorial: Guardar datos en una base de datos (Tabla única).
Agregar la tabla Orders al conjunto de datos seleccionando Configurar DataSet con el asistente desde la ventana Orígenes de datos. A continuación, puede agregar controles que muestren los datos relacionados arrastrando el nodo Orders (situado debajo de la columna Fax dentro de la tabla Customers) hasta el formulario. Para obtener más información, vea Cómo: Mostrar datos relacionados en una aplicación de Windows Forms.
Vea también
Conceptos
Enlazar controles de Windows Forms a datos en Visual Studio
Información general sobre orígenes de datos
Información general sobre TableAdapter
Preparar la aplicación para recibir datos
Enlazar controles a los datos en Visual Studio
Modificar datos en la aplicación