DataGridViewCheckBoxColumn-如果复选框选中问题

本文关键字:问题 复选框 如果 DataGridViewCheckBoxColumn- | 更新日期: 2023-09-27 18:22:41

下面有这段代码,当复选框列中的复选框被选中时,它应该显示messageBox。我知道这一排真的被选中了,这对我来说是一种考验。

如果这可行的话,我将把SelectedRows保存到DB中。因此,在构建此代码时了解一下可能会有所帮助。作为一名工程师,我想问你们,当我勾选复选框时,为什么MessageBox不出现?提前非常感谢。

  DataGridViewCheckBoxColumn chk = new DataGridViewCheckBoxColumn();
  dtg_ksluzby.Columns.Add(chk);
  dtg_ksluzby.Columns[3].Width = 20;
  foreach (DataGridViewRow row in dtg_ksluzby.Rows)
  {
      // number 3 represents the 4th column of dgv
      DataGridViewCheckBoxCell chk1 = row.Cells[3] as DataGridViewCheckBoxCell; 
      if (Convert.ToBoolean(chk1.Value) == true)
      {
         MessageBox.Show("this cell checked");
      }
      else
      {
      }
  }

DataGridViewCheckBoxColumn-如果复选框选中问题

此代码永远不会到达消息框代码-您已经创建了控件,将其添加到表中,然后立即检查它们的值,这些值将不会被设置。

您需要有一个事件处理程序来捕获datagridview:中更改的值

private void dtg_ksluzby_CellValueChanged(object sender, 
                                          DataGridViewCellEventArgs e)
{
    // Check through the cells here (or use event args to get data)
}