如何:从 Windows 窗体 DataGridView 控件中移除自动生成的列

如果将 DataGridView 控件设置为根据其数据源中的数据自动生成列,则可以选择忽略某些列。 可以通过调用 Columns 集合的 Remove 方法进行此操作。 或者,也可通过将 Visible 属性设置为 false 来隐藏列。 当要在某些情况下显示隐藏的列或需要访问未显示的列中的数据时,此方法很有用。

移除自动生成的列

  • 调用 Columns 集合的 Remove 方法。

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

隐藏自动生成的列

  • 将列的 Visible 属性设置为 false。

    dataGridView1.Columns("CustomerID").Visible = False
    
    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
private void BindDataAndInitializeColumns()
{
    dataGridView1.AutoGenerateColumns = true;
    dataGridView1.DataSource = customersDataSet;
    dataGridView1.Columns.Remove("Fax");
    dataGridView1.Columns["CustomerID"].Visible = false;
}

编译代码

此示例需要:

  • 一个名为 dataGridView1 的 DataGridView 控件,该控件绑定到包含 Fax 和 CustomerID 列的表(如 Northwind 示例数据库中的 Customers 表)。

  • SystemSystem.Windows.Forms 程序集的引用。

请参见

参考

DataGridView

DataGridView.AutoGenerateColumns

DataGridView.Columns

DataGridViewColumnCollection.Remove

DataGridViewColumn.Visible

其他资源

在 Windows 窗体 DataGridView 控件中显示数据