如何以编程方式编辑datagridview?

HMc*_*eak 5 c# datagridview

我有一个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)

但是,你想这样做吗?阻止整个列?