相信你的datagridview1已经设置好了
第一步 设置check_column.ReadOnly=true
第二步 添加dataGridView1.CellEnter事件
private void dataGridView1_CellEnter(object sender, DataGridViewCellEventArgs e)
{
int n = e.RowIndex;
if (e.ColumnIndex == 0)
{
if (dataGridView1.Rows[n].Cells[1].Value.ToString() == "a")
{
dataGridView1.Rows[n].Cells[0].Value = true;
}
else
{
dataGridView1.Rows[n].Cells[0].Value = false;
}
}
}
上面的是我的程序里面的代码,虽然判断条件不一样,但大同小异。
我的程序运行成功。
这里你的第三个问题可能要改掉,你可以先判断你的value是否为true然后再赋值
第一个问题很好解决只要把我上面代码中的"a"换成"0"然后show一个MessageBox就可以了,第二个问题同理。
我想你自己没处理好的关键一步肯定是没设置check_column.ReadOnly.
祝你成功
欢迎交流。
在我做的程序中也是这样写的,例如:
this.dgRolePrivilege.Rows[i].Cells["Used"].Value = true;
有用的啊
你把checkbox设成只读的,自己在程序里赋值就好了