Procedimiento para dar formato a datos en el control DataGridView de formularios Windows Forms

Los procedimientos siguientes muestran el formato básico de los valores de celda mediante la propiedad DefaultCellStyle de un control DataGridView y de columnas específicas de un control. Para obtener información sobre el formato de datos avanzado, vea Procedimiento para personalizar el formato de los datos en el control DataGridView de Windows Forms.

Para dar formato a los valores de moneda y fecha

  • Establezca la propiedad Format de un DataGridViewCellStyle. En el ejemplo de código siguiente se establece el formato de columnas específicas mediante la propiedad DefaultCellStyle de las columnas. Los valores de la columna UnitPrice aparecen en el formato de moneda específico de la referencia cultural actual, con los valores negativos entre paréntesis. Los valores de la columna ShipDate aparecen en el formato de fecha corta específico de la referencia cultural actual. Para obtener más información sobre los valores Format, consulte Aplicación de formato a tipos.

    this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle.Format = "c";
    this.dataGridView1.Columns["ShipDate"].DefaultCellStyle.Format = "d";
    
    Me.dataGridView1.Columns("UnitPrice").DefaultCellStyle.Format = "c"
    Me.dataGridView1.Columns("ShipDate").DefaultCellStyle.Format = "d"
    

Para personalizar la presentación de valores de base de datos NULL

  • Establezca la propiedad NullValue de un DataGridViewCellStyle. En el ejemplo de código siguiente se usa la propiedad DataGridView.DefaultCellStyle para mostrar "no entry" en todas las celdas que contienen valores iguales a DBNull.Value.

    this.dataGridView1.DefaultCellStyle.NullValue = "no entry";
    
    Me.dataGridView1.DefaultCellStyle.NullValue = "no entry"
    

Para habilitar el ajuste automático de línea en celdas basadas en texto

  • Establezca la propiedad WrapMode de un objeto DataGridViewCellStyle en uno de los valores de enumeración DataGridViewTriState. En el ejemplo de código siguiente se usa la propiedad DataGridView.DefaultCellStyle para establecer el modo de ajuste para todo el control.

    this.dataGridView1.DefaultCellStyle.WrapMode =
        DataGridViewTriState.True;
    
    Me.dataGridView1.DefaultCellStyle.WrapMode = DataGridViewTriState.True
    

Para especificar la alineación de texto de celdas DataGridView

  • Establezca la propiedad Alignment de un objeto DataGridViewCellStyle en uno de los valores de enumeración DataGridViewContentAlignment. En el ejemplo de código siguiente se establece la alineación de una columna específica mediante la propiedad DefaultCellStyle de la columna.

    this.dataGridView1.Columns["CustomerName"].DefaultCellStyle
        .Alignment = DataGridViewContentAlignment.MiddleRight;
    
    Me.dataGridView1.Columns("CustomerName").DefaultCellStyle _
        .Alignment = DataGridViewContentAlignment.MiddleRight
    

Ejemplo

private void SetFormatting()
{
    this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle.Format = "c";
    this.dataGridView1.Columns["ShipDate"].DefaultCellStyle.Format = "d";
    this.dataGridView1.Columns["CustomerName"].DefaultCellStyle
        .Alignment = DataGridViewContentAlignment.MiddleRight;
    this.dataGridView1.DefaultCellStyle.NullValue = "no entry";
    this.dataGridView1.DefaultCellStyle.WrapMode =
        DataGridViewTriState.True;
}
Private Sub SetFormatting()
    With Me.dataGridView1
        .Columns("UnitPrice").DefaultCellStyle.Format = "c"
        .Columns("ShipDate").DefaultCellStyle.Format = "d"
        .Columns("CustomerName").DefaultCellStyle.Alignment = _
            DataGridViewContentAlignment.MiddleRight
        .DefaultCellStyle.NullValue = "no entry"
        .DefaultCellStyle.WrapMode = DataGridViewTriState.True
    End With
End Sub

Compilar el código

Estos ejemplos requieren:

Programación sólida

Para conseguir la máxima escalabilidad, debe compartir objetos DataGridViewCellStyle entre varias filas, columnas o celdas que usen los mismos estilos, en lugar de establecer las propiedades de estilo de cada elemento por separado. Para obtener más información, consulte Procedimientos recomendados para ajustar la escala del control DataGridView en Windows Forms.

Consulte también