最初の列が datagridviewcheckboxcolumn である datagridview があります。私が欲しいのは、ユーザーがdatagridviewの最初の列内のチェックボックスをいつチェック/チェックを外したかを検出することです。そのため、2つの解決策を考えました:
1)
Private Sub OnDgvCellClick(sender As Object, _
e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv.CellClick
If e.ColumnIndex = 0 Then
If Convert.ToBoolean(Me.dgv.Rows(e.RowIndex).Cells("chkcol").Value) = False then
' Do some stuff
else
' Do some stuff
End If
End If
End Sub
2) すべての datagridview 行を反復処理し、最初の列のすべてのチェックボックスに checkedchanged イベントのリスナーを追加します。
Private Sub AddCheckedChangedListener()
For i As Integer = 0 To Me.dgv.RowCount - 1
AddHandler CType(Me.dgvDatos(0, i).Value, CheckBox).CheckedChanged, AddressOf OnCheckBoxCheckedChanged
Next
End Sub
どれが最高ですか?