Compartir a través de


DataGrid

El control DataGrid permite mostrar y editar datos de muchos orígenes diferentes, como desde una base de datos de SQL, una consulta LINQ o cualquier otro origen de datos enlazable. Para más información, consulte Binding Sources Overview (Introducción a los orígenes de enlace).

Las columnas pueden mostrar texto, controles, como ComboBox, o cualquier otro contenido de WPF, como imágenes, botones o cualquier contenido incluido en una plantilla. Puede usar DataGridTemplateColumn para mostrar los datos definidos en una plantilla. En la tabla siguiente se enumeran los tipos de columna que se proporcionan de forma predeterminada.

Tipo de columna generado Tipo de datos
DataGridTextColumn String
DataGridCheckBoxColumn Boolean
DataGridComboBoxColumn Enum
DataGridHyperlinkColumn Uri

Se puede personalizar la apariencia de DataGrid, como la fuente de celda, el color y el tamaño. DataGrid admite todas las funciones de creación de estilos y plantillas de otros controles de WPF. DataGrid también incluye comportamientos predeterminados y personalizables para editar, ordenar y validar.

En la tabla siguiente se enumeran algunas de las tareas comunes para DataGrid y cómo realizarlas. Al ver las API y los temas relacionados, puede buscar más información y código de ejemplo.

Escenario Enfoque
Alternancia de colores de fondo Establezca la propiedad AlternationCount en 2 o más y, a continuación, asigne Brush a las propiedades RowBackground y AlternatingRowBackground.
Definición del comportamiento de selección de celdas y filas Establezca las propiedades SelectionMode y SelectionUnit.
Personalización de la apariencia visual de encabezados, celdas y filas Aplique un nuevo objeto Style a las propiedades ColumnHeaderStyle, RowHeaderStyle, CellStyle o RowStyle.
Establecimiento de opciones de ajuste de tamaño Establezca las propiedades Height, MaxHeight, MinHeight, Width, MaxWidth o MinWidth. Para obtener más información, consulte Opciones de ajuste de tamaño en el control DataGrid.
Obtención de acceso a los elementos seleccionados Compruebe la propiedad SelectedCells para obtener las celdas seleccionadas y la propiedad SelectedItems para obtener las filas seleccionadas. Para obtener más información, vea SelectedCells.
Personalización de las interacciones del usuario final Establezca las propiedades CanUserAddRows, CanUserDeleteRows, CanUserReorderColumns, CanUserResizeColumns, CanUserResizeRows y CanUserSortColumns.
Cancelación o cambio de las columnas generadas automáticamente Controle el evento AutoGeneratingColumn.
Inmovilización de una columna Establezca la propiedad FrozenColumnCount en 1 y mueva la columna a la posición de más a la izquierda estableciendo la propiedad DisplayIndex en 0.
Uso de datos XML como origen de datos Enlace ItemsSource en DataGrid a la consulta XPath que representa la colección de elementos. Cree cada columna en DataGrid. Enlace cada columna estableciendo XPath en el enlace a la consulta que obtiene la propiedad en el origen del elemento. Para obtener un ejemplo, consulte DataGridTextColumn.
Title Descripción
Tutorial: Mostrar los datos de una base de datos de SQL Server en un control DataGrid Describe cómo configurar un nuevo proyecto de WPF, agregar un elemento Entity Framework, establecer el origen y mostrar los datos en DataGrid.
Procedimiento para agregar detalles de fila a un control DataGrid Describe cómo crear detalles de fila para DataGrid.
Procedimiento para implementar la validación con el control DataGrid Describe cómo validar valores en celdas y filas DataGrid y mostrar comentarios de validación.
Comportamiento predeterminado de teclado y mouse en el control DataGridView Describe cómo interactuar con el control DataGrid mediante el teclado y el mouse.
Procedimiento para agrupar, ordenar y filtrar datos en el control DataGrid Describe cómo ver los datos en DataGrid de maneras diferentes mediante la agrupación, la ordenación y el filtrado de los datos.
Opciones de ajuste de tamaño en el control DataGrid Describe cómo controlar el ajuste de tamaño absoluto y automático en DataGrid.

Consulte también