Compartilhar via


Como remover colunas geradas automaticamente de um controle DataGridView dos Windows Forms

Quando seu DataGridView controle é definido para gerar automaticamente suas colunas com base em dados de sua fonte de dados, você pode omitir seletivamente determinadas colunas. Você pode fazer isso chamando o RemoveColumns método na coleção. Como alternativa, você pode ocultar colunas do modo de exibição definindo a Visible propriedade como false. Essa técnica é útil quando você deseja exibir as colunas ocultas em determinadas condições ou quando você precisa acessar os dados nas colunas sem exibi-lo.

Para remover colunas geradas automaticamente

  • Chame Columns o Remove método na coleção.

    dataGridView1.AutoGenerateColumns = true;
    dataGridView1.DataSource = customersDataSet;
    dataGridView1.Columns.Remove("Fax");
    
    With dataGridView1
        .AutoGenerateColumns = True
        .DataSource = customersDataSet
        .Columns.Remove("Fax")
    End With
    

Para ocultar colunas geradas automaticamente

  • Defina a propriedade da Visible coluna como false.

    dataGridView1.Columns["CustomerID"].Visible = false;
    
    dataGridView1.Columns("CustomerID").Visible = False
    

Exemplo

private void BindDataAndInitializeColumns()
{
    dataGridView1.AutoGenerateColumns = true;
    dataGridView1.DataSource = customersDataSet;
    dataGridView1.Columns.Remove("Fax");
    dataGridView1.Columns["CustomerID"].Visible = false;
}
Private Sub BindDataAndInitializeColumns()

    With dataGridView1
        .AutoGenerateColumns = True
        .DataSource = customersDataSet
        .Columns.Remove("Fax")
        .Columns("CustomerID").Visible = False
    End With

End Sub

Compilando o código

Este exemplo requer:

  • Um DataGridView controle chamado dataGridView1 vinculado a uma tabela que contém Fax e CustomerID colunas, como a Customers tabela no banco de dados de exemplo Northwind.

  • Referências aos assemblies System e System.Windows.Forms.

Confira também