How to check if dataGridView checkBox is checked?

前端 未结 6 1768
猫巷女王i
猫巷女王i 2021-01-04 09:13

I\'m new to programming and C# language. I got stuck, please help. So I have written this code (c# Visual Studio 2012):

private void button2_Click(object sen         


        
相关标签:
6条回答
  • 2021-01-04 09:48

    You should use Convert.ToBoolean() to check if dataGridView checkBox is checked.

    private void button2_Click(object sender, EventArgs e)
    {
        foreach (DataGridViewRow row in dataGridView1.Rows)
        {
             if (Convert.ToBoolean(row.Cells[1].Value))
             {
                  // what you want to do
             }
        }
    }
    
    0 讨论(0)
  • 2021-01-04 09:50

    This code above was wrong!

    foreach (DataGridViewRow row in dataGridView1.Rows)
    {
        DataGridViewCheckBoxCell cell = row.Cells[0] as DataGridViewCheckBoxCell; 
    
        // Note: Can't check cell.value for null if Cell is null 
        // just check cell != null first
        //We don't want a null exception!
        if (cell.Value != null)
        {
            if (cell.Value == cell.TrueValue)
            {
               //It's checked!
            }  
        }              
    }
    
    0 讨论(0)
  • 2021-01-04 10:05

    Value return an object type and that cannot be compared to a boolean value. You can cast the value to bool

    if ((bool)row.Cells[1].Value == true)
    {
        // what I want to do
    }
    
    0 讨论(0)
  • 2021-01-04 10:05

    Slight modification should work

    if (row.Cells[1].Value == (row.Cells[1].Value=true))
    {
        // what I want to do
    }
    
    0 讨论(0)
  • 2021-01-04 10:06

    All of the answers on here are prone to error,

    So to clear things up for people who stumble across this question,

    The best way to achieve what the OP wants is with the following code:

    foreach (DataGridViewRow row in dataGridView1.Rows)
    {
        DataGridViewCheckBoxCell cell = row.Cells[0] as DataGridViewCheckBoxCell; 
    
        //We don't want a null exception!
        if (cell.Value != null)
        {
            if (cell.Value == cell.TrueValue)
            {
               //It's checked!
            }  
        }              
    }
    
    0 讨论(0)
  • 2021-01-04 10:08
    if (Convert.ToBoolean(row.Cells[1].EditedFormattedValue))
    {
        //Is Checked
    }
    
    0 讨论(0)
提交回复
热议问题