Como formatar dados no controle DataGridView dos Windows Forms

Os procedimentos a seguir demonstram a formatação básica de valores de célula usando a DefaultCellStyle propriedade de um controle e de colunas específicas em um DataGridView controle. Para obter informações sobre a formatação de dados avançados, consulte Como personalizar a formatação de dados no controle DataGridView do Windows Forms.

Formatar os valores de moeda e datas

  • Defina a Format propriedade de um DataGridViewCellStylearquivo . O exemplo de código a seguir define o formato para colunas específicas usando a DefaultCellStyle propriedade das colunas. Valores na coluna UnitPrice aparecem no formato de moeda específico da cultura atual, com valores negativos entre parênteses. Valores na coluna ShipDate aparecem no formato de data curto específico da cultura atual. Para obter mais informações sobre Format valores, consulte Tipos de formatação.

    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"
    

Personalizar a exibição de valores nulos de banco de dados

  • Defina a NullValue propriedade de um DataGridViewCellStylearquivo . O exemplo de código a seguir usa a propriedade para exibir "nenhuma entrada" em todas as células que contêm valores iguais a DataGridView.DefaultCellStyleDBNull.Value.

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

Habilitar quebra automática de linha nas células de texto

  • Defina a propriedade de a WrapModeDataGridViewCellStyle como um dos DataGridViewTriState valores de enumeração. O exemplo de código a seguir usa a DataGridView.DefaultCellStyle propriedade para definir o modo de encapsulamento para o controle inteiro.

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

Especificar o alinhamento de texto de células DataGridView

  • Defina a propriedade de a AlignmentDataGridViewCellStyle como um dos DataGridViewContentAlignment valores de enumeração. O exemplo de código a seguir define o alinhamento para uma coluna específica usando a DefaultCellStyle propriedade da coluna.

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

Exemplo

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

Compilando o código

Esses exemplos precisam de:

Programação robusta

Para obter escalabilidade máxima, você deve compartilhar DataGridViewCellStyle objetos em várias linhas, colunas ou células que usam os mesmos estilos em vez de definir as propriedades de estilo para cada elemento separadamente. Para obter mais informações, consulte Práticas recomendadas para colocação em escala do controle DataGridView do Windows Forms.

Confira também