簡體   English   中英

獲取Datagridview中的復選框的值?

[英]Get value of checkbox in Datagridview?

我試圖獲取DataGridView中Checked復選框的值,所以我檢查value是true還是false:

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex == 0 && e.RowIndex != -1)
            {

                for (int i = 0; i < dataGridView1.Rows.Count; i++)
                {

                    if ((bool)dataGridView1.Rows[i].Cells["check"].Value == true)
                    {

                        dataGridView1.Rows[i].Cells["check"].Value = false;
                    }
                    else
                    {

                        dataGridView1.Rows[i].Cells["check"].Value = true;
                    }

                    button2.Enabled = (counter > 0);

                }
            }
        }
    } 

它在一行中插入一個錯誤:

if ((bool)dataGridView1.Rows[i].Cells["check"].Value == true)

第二種解決方案:

 if (dataGridView1.Rows[i].Cells["check"].Value == null || (bool)dataGridView1.Rows[i].Cells["check"].Value == false)
                    {

                        dataGridView1.Rows[i].Cells["check"].Value = true;

                        counter++;
                    }
                    else
                    {

                        dataGridView1.Rows[i].Cells["check"].Value = false;

                        counter--;
                    }

下面的代碼有效,但有時未選中此復選框

我在我的項目中做的事情確實很相似,我只使用OnCellValueChanged而不是CellContentClick。

這是我的代碼行

bool completed = Convert.ToBoolean(dgv.Rows[e.RowIndex].Cells[1].Value.ToString());

您到底是什么錯誤? 您是否嘗試查看調試器中的.Value是什么?

暫無
暫無

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

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