C# DataGridView中DataGridViewCheckBoxColumn不能界面上勾选的原因
我在datagridview下面设置了启用编辑
也设定了BindingList 来进行数据绑定
创建事件:
private void DGV_CellContentClick(object sender, DataGridViewCellEventArgs e)
{if (e.ColumnIndex == 0){XiangmuInfo THisXiangmu = DGV.Rows[e.RowIndex].DataBoundItem as XiangmuInfo;if (THisXiangmu!=null){THisXiangmu.IsChecked =!THisXiangmu.IsChecked;//改bool属性后}//bool thisCellM = (bool)DGV.Rows[0].Cells[e.ColumnIndex].Value;//DGV.Rows[e.RowIndex].Cells[0].Value = !thisCellM;}
}
点击后始终无法选中(断点发现绑定的对象值改过来了,但是界面上的选择钩并未显示):
分析有两个方面 :
1:是 事件是 单元格的事件,将表格选择 选择行 修改成 选择单元格 。
2:手动再一次将 当前列 设定为ReadOnly = false;
最好是将这个选择列修改成有名称的列。
DGV.AutoGenerateColumns = false;this.ColChecked.ReadOnly = false;//DGV.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
这样就可以搞定了。