Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota:
El DataGridView control reemplaza y agrega funcionalidad al DataGrid control; sin embargo, el DataGrid control se conserva tanto para la compatibilidad con versiones anteriores como para el uso futuro, si lo desea. Para obtener más información, consulte Diferencias entre los controles DataGridView y DataGrid de Windows Forms.
Aplicar diferentes colores a varias partes de un DataGrid control puede ayudar a facilitar la lectura e interpretación de la información. El color se puede aplicar a filas y columnas. Las filas y columnas también se pueden ocultar o mostrar a su discreción.
Hay tres aspectos básicos del formato del DataGrid control. Puede establecer propiedades para establecer un estilo predeterminado en el que se muestran los datos. A partir de esa base, puede personalizar la forma en que se muestran determinadas tablas en tiempo de ejecución. Por último, puede modificar qué columnas se muestran en la cuadrícula de datos, así como los colores y otros formatos que se muestran.
Como paso inicial para dar formato a una cuadrícula de datos, puede establecer las propiedades del DataGrid propio . Estas opciones de color y formato forman una base a partir de la cual puede realizar cambios en función de las tablas de datos y columnas mostradas.
Para establecer un estilo predeterminado para el control DataGrid
Establezca las siguientes propiedades según corresponda:
Propiedad Descripción AlternatingBackColor La BackColor propiedad define el color de las filas pares de la cuadrícula. Al establecer la AlternatingBackColor propiedad en un color diferente, todas las demás filas se establecen en este nuevo color (filas 1, 3, 5, etc.). BackColor Color de fondo de las filas pares de la cuadrícula (filas 0, 2, 4, 6, etc.). BackgroundColor Si bien las propiedades BackColor y AlternatingBackColor determinan el color de las filas de la cuadrícula, la propiedad BackgroundColor determina el color del área que no contiene filas, que sólo es visible cuando la cuadrícula se desplaza hasta el fondo, o si sólo hay algunas filas contenidas en la cuadrícula. BorderStyle Estilo de borde de la cuadrícula, uno de los valores de enumeración BorderStyle. CaptionBackColor Color de fondo del título de la ventana de la cuadrícula que aparece inmediatamente encima de la cuadrícula. CaptionFont La fuente del rótulo en la parte superior de la cuadrícula. CaptionForeColor Color de fondo del título de la ventana de la cuadrícula. Font Fuente usada para mostrar el texto en la cuadrícula. ForeColor El color de la fuente con que se muestran los datos en las filas de la rejilla de datos. GridLineColor Color de las líneas de la cuadrícula de la tabla de datos. GridLineStyle Estilo de las líneas que separan las celdas de la cuadrícula, uno de los DataGridLineStyle valores de enumeración. HeaderBackColor Color de fondo de los encabezados de fila y columna. HeaderFont Fuente usada para los encabezados de columna. HeaderForeColor Color de primer plano de los encabezados de columna de la cuadrícula, incluido el texto del encabezado de columna y los glifos más/menos (para expandir filas cuando se muestran varias tablas relacionadas). LinkColor Color del texto de todos los vínculos de la cuadrícula de datos, incluidos los vínculos a tablas secundarias, el nombre de la relación, etc. ParentRowsBackColor En una tabla secundaria, este es el color de fondo de las filas principales. ParentRowsForeColor En la tabla secundaria, este es el color de primer plano de las filas de la tabla principal. ParentRowsLabelStyle Determina si los nombres de tabla y columna se muestran en la fila principal, mediante la DataGridParentRowsLabelStyle enumeración. PreferredColumnWidth Ancho predeterminado (en píxeles) de las columnas de la cuadrícula. Establezca esta propiedad antes de restablecer las DataSource propiedades y DataMember (ya sea por separado o a través del SetDataBinding método ), o bien la propiedad no tendrá ningún efecto.
La propiedad no se puede establecer en un valor inferior a 0.PreferredRowHeight Alto de fila (en píxeles) de las filas de la cuadrícula. Establezca esta propiedad antes de restablecer las DataSource propiedades y DataMember (ya sea por separado o a través del SetDataBinding método ), o bien la propiedad no tendrá ningún efecto.
La propiedad no se puede establecer en un valor inferior a 0.RowHeaderWidth Ancho de los encabezados de fila de la cuadrícula. SelectionBackColor Cuando se selecciona una fila o celda, este es el color de fondo. SelectionForeColor Cuando se selecciona una fila o celda, este es el color de primer plano. Nota:
Tenga en cuenta que, al personalizar los colores de los controles, es posible que el control sea inaccesible, debido a una mala elección de color (por ejemplo, rojo y verde). Use los colores disponibles en la paleta Colores del sistema para evitar este problema.
En los procedimientos siguientes se supone que el formulario tiene un DataGrid control enlazado a una tabla de datos. Para obtener más información, consulte Vinculación del control DataGrid de Windows Forms a un origen de datos.
Para establecer el estilo de tabla y columna de una tabla de datos mediante programación
Cree un nuevo estilo de tabla y establezca sus propiedades.
Cree un estilo de columna y establezca sus propiedades.
Agregue el estilo de columna a la colección de estilos de columna del estilo de tabla.
Agregue el estilo de tabla a la colección de estilos de tabla de la cuadrícula de datos.
En el ejemplo siguiente, cree una instancia de un nuevo DataGridTableStyle y establezca su MappingName propiedad.
Cree una nueva instancia de GridColumnStyle y establezca su MappingName (y otras propiedades de diseño y visualización).
Repita los pasos del 2 al 6 para cada estilo de columna que quiera crear.
En el ejemplo siguiente se muestra cómo se crea un DataGridTextBoxColumn , porque se va a mostrar un nombre en la columna . Además, agrega el estilo de columna al GridColumnStylesCollection del estilo de tabla y el estilo de tabla al GridTableStylesCollection de la cuadrícula de datos.
Private Sub CreateAuthorFirstNameColumn() ' Add a GridTableStyle and set the MappingName ' to the name of the DataTable. Dim TSAuthors As New DataGridTableStyle() TSAuthors.MappingName = "Authors" ' Add a GridColumnStyle and set the MappingName ' to the name of a DataColumn in the DataTable. ' Set the HeaderText and Width properties. Dim TCFirstName As New DataGridTextBoxColumn() TCFirstName.MappingName = "AV_FName" TCFirstName.HeaderText = "First Name" TCFirstName.Width = 75 TSAuthors.GridColumnStyles.Add(TCFirstName) ' Add the DataGridTableStyle instance to ' the GridTableStylesCollection. myDataGrid.TableStyles.Add(TSAuthors) End Sub
private void addCustomDataTableStyle() { // Add a GridTableStyle and set the MappingName // to the name of the DataTable. DataGridTableStyle TSAuthors = new DataGridTableStyle(); TSAuthors.MappingName = "Authors"; // Add a GridColumnStyle and set the MappingName // to the name of a DataColumn in the DataTable. // Set the HeaderText and Width properties. DataGridColumnStyle TCFirstName = new DataGridTextBoxColumn(); TCFirstName.MappingName = " AV_FName"; TCFirstName.HeaderText = "First Name"; TCFirstName.Width = 75; TSAuthors.GridColumnStyles.Add(TCFirstName); // Add the DataGridTableStyle instance to // the GridTableStylesCollection. dataGrid1.TableStyles.Add(TSAuthors); }
private: void addCustomDataTableStyle() { // Add a GridTableStyle and set the MappingName // to the name of the DataTable. DataGridTableStyle^ TSAuthors = new DataGridTableStyle(); TSAuthors->MappingName = "Authors"; // Add a GridColumnStyle and set the MappingName // to the name of a DataColumn in the DataTable. // Set the HeaderText and Width properties. DataGridColumnStyle^ TCFirstName = gcnew DataGridTextBoxColumn(); TCFirstName->MappingName = "AV_FName"; TCFirstName->HeaderText = "First Name"; TCFirstName->Width = 75; TSAuthors->GridColumnStyles->Add(TCFirstName); // Add the DataGridTableStyle instance to // the GridTableStylesCollection. dataGrid1->TableStyles->Add(TSAuthors); }
Consulte también
.NET Desktop feedback