Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
DataGridViewのCheckBoxColumnの値の取得について
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=30416#CommentId83599
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
魔界の仮面弁士
 (社会人)
投稿日時
2019/8/12 12:50:36
> CheckBoxXokumn
DataGridViewCheckBoxColumn や
DataGridViewCheckBoxCell の事でしょうか。
データバインドしているのであれば、バインド元の DataTable に対して、
Boolean 型の列を設けておくのが、最も手間がかからないと思います。(Linq との相性も良い)
この場合、DataGridView1.Rows を列挙するのではなく、
バインド元の DataTable の Rows を列挙するようにします。
バインドしなくてもできなくは無いですが、DataGridView の列をクリックしてソートされた場合、
どっちにていも行番号単位では取得できず、DataGridViewRow に遡って
各セルを参照しなおす必要がありますね。
> うまく処理できません。
どう処理しているかにもよりますが、2 つ確認したい点が。
(1) RowHeadersVisible を True にしておいた場合、各行の左端にある行ヘッダー列は、
[ ▶ ] になっていますか? それとも
[...🖊] になっていますか?
後者は値が確定する前なので、前者の状態にしてからアクセスする必要があります。
(2) 実際、DataGridView1("mark", rowIndex).Value から返される Object 値は何になっていますか?
DBNull.Value なのか、Nothing なのか "" なのか True なのか "True" なのか 1 なのか…。
データ型も重要なところなので、TypeName 関数などで確認してみてください。