【VB.NET】データグリッドビューで行毎のチェックボックスにイベントを仕込む
おはようございます。
今回は、データグリッドに配置したチェックボックス列にイベントを仕込みたいと思います。
プログラムは前回のものを流用。
プログラムの修正
新規イベントの追加
データグリッドビューの現在のセル状態が変更された際のイベントを追加します。

Form1.vb
| 1 2 3 4 5 6 7 8 9 10 11 12 |     ''' <summary>     ''' データグリッドビューの現在のセル状態が変更された際のイベント     ''' </summary>     ''' <param name="sender"></param>     ''' <param name="e"></param>     PrivateSubdgv_CurrentCellDirtyStateChanged(sender AsObject,eAsEventArgs)Handlesdgv.CurrentCellDirtyStateChanged         ' 対象のセルを判定         If dgv.CurrentCellAddress.X=0AndAlsodgv.IsCurrentCellDirty Then             ' 変更を確定する             dgv.CommitEdit(DataGridViewDataErrorContexts.Commit)         EndIf     EndSub | 
データグリッドビューのセル値が変更された際のイベントを追加

Form1.vb
| 1 2 3 4 5 6 7 8 9 10 11 12 13 |     ''' <summary>     ''' データグリッドビューのセル値が変更(が確定)された際のイベント     ''' </summary>     ''' <param name="sender"></param>     ''' <param name="e"></param>     PrivateSubdgv_CellValueChanged(sender AsObject,eAsDataGridViewCellEventArgs)Handlesdgv.CellValueChanged         If(TypeOfdgv(e.ColumnIndex,e.RowIndex)Is DataGridViewCheckBoxCell)Then             Dimchk AsDataGridViewCheckBoxCell=dgv(e.ColumnIndex,e.RowIndex)             MessageBox.Show(e.RowIndex+1&"行目のチェックボックス値:"&chk.Value)         EndIf     EndSub | 
データグリッドビューのセルがクリック(マウスダウン)された際のイベントを追加

Form1.vb
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 |     ''' <summary>     ''' データグリッドビューのセルをクリック(マウスダウン)した際のイベント     ''' </summary>     ''' <param name="sender"></param>     ''' <param name="e"></param>     PrivateSubdgv_CellMouseDown(sender AsObject,eAsDataGridViewCellMouseEventArgs)Handlesdgv.CellMouseDown         If(TypeOfdgv(e.ColumnIndex,e.RowIndex)Is DataGridViewCheckBoxCell)Then             Dimcell AsDataGridViewCheckBoxCell=dgv(e.ColumnIndex,e.RowIndex)             cell.Value=If(cell.Value=False,True,False)             ' 変更を確定する             dgv.CommitEdit(DataGridViewDataErrorContexts.Commit)             dgv.EndEdit()         EndIf     EndSub | 
起動してみる


無事に処理できましたね。
まとめ
次回は、チェックされた行の背景色を変更してみたいと思います。
【VB.NET】データグリッドビューでチェックされた行の背景色を変更する
ではでは。


 https://www.doraxdora.com/blog/2017/12/15/post-3456/
 https://www.doraxdora.com/blog/2017/12/15/post-3456/








ディスカッション
コメント一覧
まだ、コメントがありません