DataGridView添加DataGridViewCheckBoxColumn
DataGridView是工具栏里面拉出来的,DataGridViewCheckBoxColumn也是直接在界面上添加上去的,行是程序里面添加的,但是单击DataGridViewCheckBoxColumn,
在cellclick里面写代码,有时候能点击上,有时候不能,特别是点击快的时候,要点两次才行
代码如下,
初始化时候Column1.DefaultCellStyle.NullValue = true;//设置初始值
点击
private void answerParameterDGV_CellClick(object sender, DataGridViewCellEventArgs e)
{
answerParameterDGV.CommitEdit(DataGridViewDataErrorContexts.Commit);
if (e.ColumnIndex == 0)
{
if ((((DataGridViewCheckBoxCell)answerParameterDGV.Rows[e.RowIndex].Cells[e.ColumnIndex]).Tag) == null ||
(((DataGridViewCheckBoxCell)answerParameterDGV.Rows[e.RowIndex].Cells[e.ColumnIndex]).Tag.ToString()) == "0")
{
((DataGridViewCheckBoxCell)answerParameterDGV.Rows[e.RowIndex].Cells[e.ColumnIndex]).Tag = "1";
((DataGridViewCheckBoxCell)answerParameterDGV.Rows[e.RowIndex].Cells[e.ColumnIndex]).Value = true;
}
else if((((DataGridViewCheckBoxCell)answerParameterDGV.Rows[e.RowIndex].Cells[e.ColumnIndex]).Tag.ToString()) == "1")
{
((DataGridViewCheckBoxCell)answerParameterDGV.Rows[e.RowIndex].Cells[e.ColumnIndex]).Tag = "0";
((DataGridViewCheckBoxCell)answerParameterDGV.Rows[e.RowIndex].Cells[e.ColumnIndex]).Value = false;
}
}
}