■58348 / ) |
DataGridViewCheckBoxの取得 |
□投稿者/ みっつ (4回)-(2011/03/31(Thu) 12:15:57)
|
分類:[C#]
何度もすみません。 Windows XP Visual studio 2010 C# で開発しています。
先ほどはありがとうございました。
今度は、OKボタンを押下した際に、 チェックがついている行(Rows)の データ(NAME)を取得したいです。
DataGridViewは 下記のようになっているとします。
CHECK---NAME [ON]----AAAA [ON]----BBBB [ON]----CCCC [OFF]---DDDD
CHECK--DataGridViewCheckBoxのName NAME---DataGridViewTextBoxのName ON-----チェックボックスTrue OFF----チェックボックスFalse だと思ってください。
下記はコーディングです。 DataGridViewCheckBoxのFalseValueには0 DataGridViewCheckBoxのTrueValueには1が登録されています。
private void OK_button_Click(object sender, EventArgs e) { for(int i = 0;dataGridView1.Rows.Count > i ;i++) { if (dataGridView1.Rows[i].Cells["CHECK"].Value.ToString() == "1")※ { MessageBox.Show(dataGridView1.Rows[i].Cells["NAME"].Value.ToString()); } } }
上記のように記述したところ、 MessageBoxで[AAAA]と[BBBB]は 取得することが出来ました。 ですが、[CCCC]は取得できません。 ※の部分でエラーになります。
エラー: NullReferenceExceptionはユーザーコードによってハンドルされませんでした。 オブジェクト参照がオブジェクト インスタンスに設定されていません。
調べてみると、[CCCC]の時に dataGridView1.Rows[i].Cells["CHECK"].Value がnullになっていました。
チェックは間違いなくついているし、 ついていなくても0になると思うのですが・・・ 何が原因がわかりますでしょうか?
どう調べたらいいのかもわからず・・・。 NAMEの取得の仕方がすでにおかしいのでしょうか?
よろしくお願いいたします。
|
|