将c#datagridview数据源设置为null后,checkbox列的奇怪行为

时间:2016-07-05 20:46:39

标签: c# checkbox datagridview

我有一个c#datagridview复选框列,工作正常,直到我将数据源设置为null。网格折叠,但是额外的复选框列会立即添加到原始右侧。如果我再次单击重置按钮,则会弹出第三个复选框列。以下代码是此类列的标准代码:

enter image description here

chk = new DataGridViewCheckBoxColumn();
dataGridView1.Columns.Add(chk);

图像显示单击重置的结果。

1 个答案:

答案 0 :(得分:0)

如果我已正确理解了问题,并且您提供的代码是重置方法中的全部代码,则需要先删除旧版列。

我假设您在删除和添加之前只有一个列,所以我将编辑您的代码以通过索引首先删除它,通常您会想要搜索正确的索引但这应该适用于您的情况:

datagrid.Columns.RemoveAt(0);
chk = new DataGridViewCheckBoxColumn();
dataGridView1.Columns.Add(chk);