Практическое руководство. Удаление автоматически сгенерированных столбцов элемента управления DataGridView в Windows Forms

Если для элемента управления DataGridView задано автоматическое создание столбцов на основе данных из источника данных, можно выборочно опустить определенные столбцы. Это можно сделать, вызвав метод Remove в коллекции Columns. Можно также скрыть столбцы из представления, задав для свойства Visible значение false. Этот способ удобен, если вам нужно отображать скрытые столбцы в определенных условиях, или когда необходимо получить доступ к данным в столбцах, не отображая их.

Удаление автоматически созданных столбцов

  • Вызовите метод Remove в коллекции Columns.

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

Скрытие автоматически созданных столбцов

  • Задайте для свойства Visible столбца значение false.

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

Пример

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

Компиляция кода

Для этого примера требуются:

  • элемент управления DataGridView с именем dataGridView1, связанный с таблицей, содержащей столбцы Fax и CustomerID, например, с таблицей Customers демонстрационной базы данных Northwind;

  • ссылки на сборки System и System.Windows.Forms.

См. также