簡體   English   中英

在DataGridView CheckBoxColumn中獲取CheckBox的正確值

[英]Getting the right value of a CheckBox in a DataGridView CheckBoxColumn

我在DataGridView中有一個名為StatusCheckBox列,當我checkuncheck它時,我想在數據庫中更新truefalse 目前,我有以下方法可以做到這一點。

選擇特定的行后, StatusOfSelectedEmployee SelectedEmployeeID屬性和StatusOfSelectedEmployee屬性准確地分配值。 但是我想要實現的是我想在checkuncheck CheckBox而不是選擇行時執行此操作。 現在,當我單擊CheckBox只會為SelectedEmployeeID屬性分配正確的值。 StatusOfSelectedEmployee始終為false

private void DGV_CellClick(object sender, DataGridViewCellEventArgs e)
{
    SelectedEmployeeID = DGV.Rows[e.RowIndex].Cells["EmployeeID"].Value.ToString();
    StatusOfSelectedEmployee = Convert.ToBoolean(DGV.Rows[e.RowIndex].Cells["EmployeeStatus"].Value);

    if (e.ColumnIndex == 10 & e.RowIndex != -1) //CheckBox column's col_index is 10
    {
        OnChangeEmployeeStatus(sender, e); //This will update the status
    }

}
  1. 如何獲得StatusOfSelectedEmployee屬性的正確值?
  2. 如何避免在if條件下使用列名而不是數字的硬編碼?

1)嘗試使用DataGridView.CellValueChanged事件。 更改值后會觸發

2)使用Datagridview1.Columns["columnName"].Index獲取列索引

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM