Procedure: rimuovere le colonne generate automaticamente da un controllo DataGridView di Windows Form

Quando il DataGridView controllo è impostato per generare automaticamente le colonne in base ai dati dell'origine dati, è possibile omettere in modo selettivo determinate colonne. A tale scopo, chiamare il Remove metodo nella Columns raccolta. In alternativa, è possibile nascondere le colonne dalla visualizzazione impostando la Visible proprietà su false. Questa tecnica è utile quando si desidera visualizzare le colonne nascoste in determinate condizioni o quando è necessario accedere ai dati nelle colonne senza visualizzarla.

Per rimuovere le colonne generate automaticamente

  • Chiamare il Remove metodo nella Columns raccolta.

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

Per nascondere le colonne generate automaticamente

  • Impostare la proprietà della Visible colonna su false.

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

Esempio

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

Compilazione del codice

L'esempio presenta i requisiti seguenti:

  • Controllo DataGridView denominato dataGridView1 associato a una tabella contenente Fax colonne e CustomerID , ad esempio la Customers tabella nel database di esempio Northwind.

  • Riferimenti agli assembly System e System.Windows.Forms.

Vedi anche