2017-06-27 12 views
0

私はDataGridViewの、チェックイン、チェックボックスの値を取得しようとしましたので、値がtrueまたはfalseである場合、私は確認してください。Datagridviewのチェックボックスの値を取得しますか?

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

第二の溶液:

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); 

       } 
      } 
     } 
    } 

それは行にエラーをinvolks

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--; 
        } 

以下のコードは機能しますが、チェックボックスがオフになることがあります

+0

[DataGridViewCheckBoxCellがチェックされているかどうかを確認する方法](https://stackoverflow.com/questions/1563190/how-to-verify-if-a-datagridviewcheckboxcell-is-checked) – Pikoh

+0

質問を受け取りましたコード。回答コードを試してください:) – Pikoh

+0

質問が更新されました – ITMANAGER

答えて

0

私は、私のプロジェクトで本当に似たようなことをしています。 私はCellContentClickの代わりにOnCellValueChangedを使用しています。

ここでは、コードの私の現用回線が

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

だまさにあなたのエラーは何ですか? .Valueがデバッガにどのようなものがあるのか​​見てみましたか?

+0

私の質問をもう一度見て、私は新しい解決策を追加しましたが、時間の後にチェックします – ITMANAGER

+0

何を意味しますか? – TinkeringMatt

関連する問題