我有一个datagridview连接到数据库.我有一个复选框,用于在datagridview中启用数据编辑.如果选中该复选框,则只能编辑1列datagridview,编辑后单击"保存"按钮将其反映在数据库中,当取消选中复选框时,将禁用编辑.
我尝试过这样的事情:
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.CheckState == CheckState.Checked)
{
dataGridView1.CurrentRow.ReadOnly = false;
dataGridView1.EditMode = DataGridViewEditMode.EditOnKeystrokeOrF2;
}
else if (checkBox1.CheckState == CheckState.Unchecked)
{
dataGridView1.ReadOnly = true;
}
}
Run Code Online (Sandbox Code Playgroud)
此代码忽略了选择要编辑的列的概念.
小智 0
要执行您想要的操作,您必须仅设置要禁用的列。
dataGridView1.Columns[0].ReadOnly = true;
dataGridView1.Columns[1].ReadOnly = false;
Run Code Online (Sandbox Code Playgroud)
但是,你想这样做吗?阻止整个列?