Como definir estilos de célula padrão para o controle DataGridView dos Windows Forms
Com o DataGridView controle, você pode especificar estilos de célula padrão para o controle inteiro e para colunas e linhas específicas. Esses padrões filtram do nível do controle até o nível de coluna e depois até o nível de linha e o nível da célula. Se uma propriedade específica DataGridViewCellStyle não estiver definida no nível da célula, a configuração de propriedade padrão no nível da linha será usada. Se a propriedade também não estiver definida no nível de linha, a configuração de coluna padrão será usada. Finalmente, se a propriedade também não estiver definida no nível da coluna, a configuração padrão DataGridView será usada. Com essa configuração, você pode evitar precisar duplicar as configurações de propriedade em vários níveis. Em cada nível, basta especifica os estilos que são diferentes dos níveis acima. Para obter mais informações, consulte Estilos de célula no controle DataGridView dos Windows Forms.
Há um suporte abrangente para esta tarefa no Visual Studio. Consulte também Como definir estilos de célula padrão e formatos de dados para o controle DataGridView dos Windows Forms usando o designer.
Definir estilos de célula padrão com programação
Defina as propriedades do recuperado DataGridViewCellStyle através da DataGridView.DefaultCellStyle propriedade.
this.dataGridView1.DefaultCellStyle.BackColor = Color.Beige; this.dataGridView1.DefaultCellStyle.Font = new Font("Tahoma", 12);
Me.dataGridView1.DefaultCellStyle.BackColor = Color.Beige Me.dataGridView1.DefaultCellStyle.Font = New Font("Tahoma", 12)
Crie e inicialize novos DataGridViewCellStyle objetos para uso por várias linhas e colunas.
DataGridViewCellStyle highlightCellStyle = new DataGridViewCellStyle(); highlightCellStyle.BackColor = Color.Red; DataGridViewCellStyle currencyCellStyle = new DataGridViewCellStyle(); currencyCellStyle.Format = "C"; currencyCellStyle.ForeColor = Color.Green;
Dim highlightCellStyle As New DataGridViewCellStyle highlightCellStyle.BackColor = Color.Red Dim currencyCellStyle As New DataGridViewCellStyle currencyCellStyle.Format = "C" currencyCellStyle.ForeColor = Color.Green
Defina a propriedade
DefaultCellStyle
de linhas e colunas específicas.this.dataGridView1.Rows[3].DefaultCellStyle = highlightCellStyle; this.dataGridView1.Rows[8].DefaultCellStyle = highlightCellStyle; this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle = currencyCellStyle; this.dataGridView1.Columns["TotalPrice"].DefaultCellStyle = currencyCellStyle;
With Me.dataGridView1 .Rows(3).DefaultCellStyle = highlightCellStyle .Rows(8).DefaultCellStyle = highlightCellStyle .Columns("UnitPrice").DefaultCellStyle = currencyCellStyle .Columns("TotalPrice").DefaultCellStyle = currencyCellStyle End With
Exemplo
private void SetDefaultCellStyles()
{
this.dataGridView1.DefaultCellStyle.BackColor = Color.Beige;
this.dataGridView1.DefaultCellStyle.Font = new Font("Tahoma", 12);
DataGridViewCellStyle highlightCellStyle = new DataGridViewCellStyle();
highlightCellStyle.BackColor = Color.Red;
DataGridViewCellStyle currencyCellStyle = new DataGridViewCellStyle();
currencyCellStyle.Format = "C";
currencyCellStyle.ForeColor = Color.Green;
this.dataGridView1.Rows[3].DefaultCellStyle = highlightCellStyle;
this.dataGridView1.Rows[8].DefaultCellStyle = highlightCellStyle;
this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle =
currencyCellStyle;
this.dataGridView1.Columns["TotalPrice"].DefaultCellStyle =
currencyCellStyle;
}
Private Sub SetDefaultCellStyles()
Dim highlightCellStyle As New DataGridViewCellStyle
highlightCellStyle.BackColor = Color.Red
Dim currencyCellStyle As New DataGridViewCellStyle
currencyCellStyle.Format = "C"
currencyCellStyle.ForeColor = Color.Green
With Me.dataGridView1
.DefaultCellStyle.BackColor = Color.Beige
.DefaultCellStyle.Font = New Font("Tahoma", 12)
.Rows(3).DefaultCellStyle = highlightCellStyle
.Rows(8).DefaultCellStyle = highlightCellStyle
.Columns("UnitPrice").DefaultCellStyle = currencyCellStyle
.Columns("TotalPrice").DefaultCellStyle = currencyCellStyle
End With
End Sub
Compilando o código
Este exemplo requer:
Um controle DataGridView chamado
dataGridView1
.Referências ao System, System.Drawinge System.Windows.Forms assemblies.
Programação robusta
Para obter escalabilidade máxima ao trabalhar com conjuntos de dados muito grandes, 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 elementos individuais separadamente. Além disso, você deve criar linhas compartilhadas e acessá-las usando a DataGridViewRowCollection.SharedRow propriedade. Para obter mais informações, consulte Práticas recomendadas para colocação em escala do controle DataGridView do Windows Forms.
Confira também
- DataGridView
- DataGridViewCellStyle
- DataGridView.DefaultCellStyle
- DataGridViewBand.DefaultCellStyle
- Formatação e definição de estilos básicas no controle DataGridView dos Windows Forms
- Estilos de Célula no Controle DataGridView dos Windows Forms
- Práticas recomendadas para colocação em escala do controle DataGridView dos Windows Forms
- Como definir estilos de linha alternada para o controle DataGridView do Windows Forms
.NET Desktop feedback
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de