Creación de tablas de búsqueda en aplicaciones de .NET Framework de WPF

Nota:

Los conjuntos de datos y las clases relacionadas son tecnologías heredadas de .NET Framework de principios de la década de 2000 que permiten a las aplicaciones trabajar con datos en memoria mientras están desconectadas de la base de datos. Las tecnologías son especialmente útiles para las aplicaciones que permiten a los usuarios modificar los datos y conservar los cambios en la base de datos. Aunque los conjuntos de datos han demostrado ser una tecnología de gran éxito, se recomienda que las nuevas aplicaciones de .NET usen Entity Framework Core. Entity Framework proporciona una manera más natural de trabajar con datos tabulares como modelos de objetos y tiene una interfaz de programación más sencilla.

El término tabla de búsqueda (a veces denominada enlace de búsqueda) describe un control que muestra información de una tabla de datos basada en el valor de un campo de clave externa de otra tabla. Puede crear una tabla de búsqueda si arrastra el nodo principal de una tabla o objeto primarios en la ventana Orígenes de datos a un control que ya está enlazado a una columna o propiedad en una tabla secundaria relacionada.

Por ejemplo, considérese una tabla de Orders en una base de datos de ventas. Cada registro de la tabla Orders incluye un elemento CustomerID que indica el cliente que ha realizado el pedido. CustomerID es una clave externa que señala a un registro de cliente en la tabla Customers. Al mostrar una lista de pedidos de la tabla Orders, es posible que quiera mostrar el nombre real del cliente en lugar del valor CustomerID. Como el nombre del cliente está en la tabla Customers, debe crear una tabla de búsqueda para mostrarlo. La tabla de búsqueda usa el valor CustomerID del registro Orders para navegar por la relación y devolver el nombre del cliente.

Para crear una tabla de búsqueda

  1. Agregue uno de los siguientes tipos de orígenes de datos con datos relacionados al proyecto:

    Nota

    Para poder crear una tabla de búsqueda, deben existir dos tablas u objetos relacionados como origen de datos para el proyecto.

  2. Abra WPF Designer y asegúrese de que el diseñador tiene un contenedor que sea un destino de colocación válido para los elementos de la ventana Orígenes de datos.

    Para más información sobre los destinos de colocación válidos, vea Enlace de controles WPF a datos en Visual Studio.

  3. En el menú Datos, haga clic en Mostrar orígenes de datos para abrir la ventana Orígenes de datos.

  4. Expanda los nodos de la ventana Orígenes de datos hasta que pueda ver la tabla primaria o el objeto, y la tabla secundaria o el objeto relacionado.

    Nota

    La tabla o el objeto secundarios relacionado es el nodo que aparece como un nodo secundario expandible bajo la tabla o el objeto primarios.

  5. Haga clic en el menú de lista desplegable del nodo secundario y seleccione Detalles.

  6. Expanda el nodo secundario.

  7. En el nodo secundario, haga clic en el menú de lista desplegable del elemento que relaciona los datos secundarios y primarios. (En el ejemplo anterior, es el nodo CustomerID). Seleccione uno de los siguientes tipos de controles que admiten el enlace de búsqueda:

  8. Arrastre el nodo secundario desde la ventana Orígenes de datos a un contenedor en el diseñador de WPF. (En el ejemplo anterior, el nodo secundario es Orders).

    Visual Studio genera XAML que crea controles enlazados a datos para cada uno de los elementos que arrastre. El código XAML también agrega un nuevo elemento CollectionViewSource para la tabla o el objeto secundario a los recursos del destino de colocación. Para algunos orígenes de datos, Visual Studio también genera código a fin de cargar datos en la tabla o el objeto. Para más información, vea Enlace controles WPF a datos en Visual Studio.

  9. Arrastre el nodo primario desde la ventana Orígenes de datos hasta el control de enlace de búsqueda que ha creado antes. (En el ejemplo anterior, Customers es el nodo primario).

    Visual Studio establece algunas propiedades en el control para configurar el enlace de búsqueda. En la tabla siguiente se enumeran las propiedades que modifica Visual Studio. Si es necesario, puede cambiar estas propiedades en el código XAML o en la ventana Propiedades.

    Propiedad Explicación del parámetro
    ItemsSource Esta propiedad especifica la colección o enlace que se usa para obtener los datos que se muestran en el control. Visual Studio establece esta propiedad en el elemento CollectionViewSource para los datos primarios que ha arrastrado al control.
    DisplayMemberPath Esta propiedad especifica la ruta de acceso del elemento de datos que se muestra en el control. Visual Studio establece esta propiedad en la primera columna o propiedad de los datos primarios, después de la clave principal, que tiene un tipo de datos de cadena.

    Si quiere mostrar otra columna o propiedad en los datos primarios, cambie esta propiedad a la ruta de acceso de la otra propiedad.
    SelectedValue Visual Studio enlaza esta propiedad a la columna o propiedad de los datos secundarios que ha arrastrado al diseñador. Esta es la clave externa para los datos primarios.
    SelectedValuePath Visual Studio establece esta propiedad en la ruta de acceso de la columna o propiedad de los datos secundarios que sea la clave externa de los datos primarios.