如何在 C# 中删除动态创建的 datagridview 列?
How to delete dynamically created datagridview columns in c#?
我无法删除我在 运行 时间内创建的列。如何删除动态创建的列?
下面是在按钮中创建列的代码:
//creating new column
DataGridViewTextBoxColumn column1 = new DataGridViewTextBoxColumn();
column1.ReadOnly = false;
column1.Name = "column"+ incrementcount;
column1.Resizable = DataGridViewTriState.True;
//column1.SortMode = DataGridViewColumnSortMode.Automatic;
column1.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
column1.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
column1.HeaderText = "Column" + incrementcount;
column1.Width = 100;
dataGridView4.AutoGenerateColumns = false;
dataGridView4.Columns.Add(column1);
我试图像这样删除该列,我也试图隐藏该列:
// dataGridView4.Columns[poss].Visible = false;
dataGridView4.Columns.Remove(dataGridView4.Columns[positionindex].HeaderText);
dataGridView4.Refresh();
但列仍然可见。如何删除它?
我建议使用:
- 禁用列的可见性标志
- 使用 DataGridView.Columns.RemoveAt(YourIndex)
要获取列的索引,请使用:
DataGridView.Columns["YourColumn"].Index;
我无法删除我在 运行 时间内创建的列。如何删除动态创建的列?
下面是在按钮中创建列的代码:
//creating new column
DataGridViewTextBoxColumn column1 = new DataGridViewTextBoxColumn();
column1.ReadOnly = false;
column1.Name = "column"+ incrementcount;
column1.Resizable = DataGridViewTriState.True;
//column1.SortMode = DataGridViewColumnSortMode.Automatic;
column1.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
column1.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
column1.HeaderText = "Column" + incrementcount;
column1.Width = 100;
dataGridView4.AutoGenerateColumns = false;
dataGridView4.Columns.Add(column1);
我试图像这样删除该列,我也试图隐藏该列:
// dataGridView4.Columns[poss].Visible = false;
dataGridView4.Columns.Remove(dataGridView4.Columns[positionindex].HeaderText);
dataGridView4.Refresh();
但列仍然可见。如何删除它?
我建议使用:
- 禁用列的可见性标志
- 使用 DataGridView.Columns.RemoveAt(YourIndex)
要获取列的索引,请使用:
DataGridView.Columns["YourColumn"].Index;