Crear un enlace de datos de tipo lista/detalles
Un diseño de tipo lista/detalles incluye dos partes:
Una vista de detalles que muestra una lista de elementos, normalmente una colección de datos.
Una vista de detalles que muestra los detalles acerca del elemento que se selecciona en la lista.
Este Manual del usuario es un ejemplo de diseño de tipo lista/detalles, donde la tabla de contenido es la vista de lista y el tema visualizado es la vista de detalles.
Microsoft Expression Blend facilita el proceso de agregar datos a la mesa de trabajo en un diseño de tipo lista/detalles, ya que proporciona dos modos para el panel Datos:
En el Modo de lista, los elementos que arrastra desde el panel Datos crean la vista de lista. Puede arrastrar elementos a un control ListBox , DataGrid o TreeView . Si arrastra elementos a un área vacía de la mesa de trabajo, se creará un control ListBox de forma automática.
En el Modo de detalles, los elementos que arrastra desde el panel Datos crean la vista de detalles en un panel de diseño Grid . Como alternativa, puede crear un panel de diseño diferente (por ejemplo, un panel de diseño Canvas ) y arrastrar elementos a él.
Expression Blend configura en segundo plano de forma automática la relación entre la vista de lista y la vista de detalles estableciendo la propiedad DataContext del objeto Grid en la propiedad SelectedItem del objeto que muestra la vista de lista. Esta relación se puede configurar también manualmente.
Sugerencia: |
---|
Expression Blend incluye un ejemplo que muestra un sencillo diseño de tipo lista/detalles y personaliza la apariencia de los objetos de lista y de detalles. Para abrir el ejemplo en Expression Blend, haga clic en Pantalla de bienvenida en el menú Ayuda, elija la ficha Ejemplos y haga clic en ColorSwatchSL. |
Para crear un enlace de datos de tipo lista/detalles de forma automática
Si no dispone de un origen de datos que pueda usar, cree un origen de datos de ejemplo y habilítelo para poder usarlo en tiempo de ejecución.
Para obtener más información, vea Generar datos de ejemplo.
En el panel Datos, haga clic en Modo de lista .
Sugerencia: En el Modo de lista, se asume que los elementos de datos que arrastra a la mesa de trabajo son enlaces a datos independientes o parte de una vista de lista. Este es el modo predeterminado del panel Datos.
En el panel Datos, arrastre una o varias propiedades desde una colección de datos a la mesa de trabajo (para crear un objeto ListBox) o a un objeto ListBox , DataGrid o TreeView existente.
[!NOTA]
Si aparece el cuadro de diálogo Crear enlace de datos, quizá esté en el Modo de detalles en lugar del Modo de lista.
El objeto muestra la colección de datos de cada propiedad.
Arrastrar datos en el Modo de lista a un objeto ListBox
Arrastrar datos en el Modo de lista a un objeto DataGrid
Arrastrar datos en el Modo de lista a un objeto TreeView
En el panel Datos, haga clic en Modo de detalles .
Sugerencia: En el Modo de detalles, se asume que los elementos de datos que arrastra a la mesa de trabajo forman parte de una vista de detalles. Se crea un objeto Grid para mostrar los objetos secundarios de cada elemento de datos. El objeto Grid se configura de forma automática para usar el contexto de datos y el elemento seleccionado del último objeto que se creó en el Modo de lista.
En el panel Datos, arrastre una o varias propiedades desde una colección de datos a la mesa de trabajo (para crear un panel de diseño Grid ) o a un panel de diseño existente.
El panel de diseño muestra un control TextBlock para el nombre y el valor de cada propiedad.
Arrastrar datos en el Modo de detalles tras crear el enlace ListBox
Arrastrar datos en el Modo de detalles tras crear el enlace DataGrid
Arrastrar datos en el Modo de detalles tras crear el enlace TreeView
Presione F5 para probar la aplicación. Haga clic en los elementos de la vista de lista para obtener la vista de detalles actualizada de manera correspondiente.
Selección de elementos en controles de lista para actualizar su vista de detalles
Este procedimiento le mostró cómo crear una vista de tipo lista/detalles con dos niveles de profundidad. También puede crear una vista de lista/detalles con tres niveles de profundidad.
Para obtener más información, vea Inténtelo: crear un enlace de detalles de lista de tres niveles de profundidad
Para crear un enlace de datos de tipo lista/detalles de forma manual
Si no dispone de un origen de datos que pueda usar, cree un origen de datos de ejemplo y habilítelo para poder usarlo en tiempo de ejecución.
Para obtener más información, vea Generar datos de ejemplo.
En el panel Herramientas, seleccione un control que desee usar para mostrar la vista de detalles, como un control ComboBox , y dibújelo en la mesa de trabajo.
En el panel Objetos y escala de tiempo, haga clic con el botón secundario en el nuevo objeto, elija Cambiar nombre, escriba un nombre nuevo y presione ENTRAR.
Sugerencia: Cuando se crea un objeto, no se le da un nombre explícito. Al cambiar el nombre del objeto, se crea un nombre al que se puede hacer referencia mediante la propiedad DataContext del objeto de la vista de detalles.
En el panel Datos, haga clic en Modo de lista .
En el panel Datos, arrastre una o varias propiedades desde una colección de datos al objeto de lista.
Arrastrar datos en el Modo de lista a un objeto ComboBox
En el panel Datos, haga clic en Modo de detalles .
En el panel Datos, arrastre una o varias propiedades desde una colección de datos a la mesa de trabajo (para crear un panel de diseño Grid ) o a un panel de diseño existente.
El panel de diseño muestra un control TextBlock para el nombre y el valor de cada propiedad.
Arrastrar datos en el Modo de detalles tras crear el enlace ComboBox
Presione F5 para probar la aplicación. Si, al seleccionar otro elemento en el objeto de lista, no se actualiza la vista de detalles, continúe en el paso siguiente.
Seleccione el panel de diseño (normalmente, un objeto Grid ) que representa la vista de detalles.
En el panel Propiedades, junto a la propiedad DataContext , haga clic en Opciones avanzadas y, a continuación, haga clic en Enlace de datos.
En el cuadro de diálogo Crear enlace de datos, haga clic en la ficha Propiedad del elemento.
En Elementos de la escena, seleccione el objeto de lista y, en Propiedades, seleccione la propiedad SelectedItem .
Creación de una relación entre el objeto de detalles y el objeto de lista
Haga clic en Aceptar para cerrar el cuadro de diálogo Crear enlace de datos.
Todos los elementos secundarios del panel de diseño de detalles usarán el contexto de datos del elemento seleccionado del objeto de lista.
Compruebe que los elementos secundarios del panel de diseño de detalles están enlazados a las propiedades de datos relevantes. Algunos elementos secundarios no están enlazados a datos porque muestran solo el nombre de una propiedad de datos. Los demás elementos secundarios deberían estar enlazados a datos porque muestran los datos asociados con el elemento seleccionado en el objeto de lista. Por ejemplo, seleccione uno de los elementos secundarios TextBlock que no muestran un nombre de propiedad de datos y, en el panel Propiedades, busque la propiedad Text . Si la propiedad no tiene un rectángulo de selección amarillo alrededor, el objeto TextBlock no está enlazado a datos. Para enlazar el objeto TextBlock :
Haga clic en Opciones avanzadas junto a la propiedad Text y elija Enlace de datos.
En el cuadro de diálogo Crear enlace de datos, haga clic en la ficha Contexto de datos explícito.
En Campos, expanda Collection y seleccione la propiedad de datos que desea mostrar en este objeto TextBlock .
Haga clic en Aceptar para cerrar el cuadro de diálogo Crear enlace de datos.
Aparece un rectángulo de selección amarillo alrededor de la propiedad Text para indicar que la propiedad está ahora enlazada a datos.
Presione F5 para probar la aplicación.
Vea también
Tareas
Usar el control DataGrid
Usar el control TreeView
Conceptos
Aplicar estilo a un control que muestra datos
Copyright © 2011 de Microsoft Corporation. Reservados todos los derechos.