0

最初の列が 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

どれが最高ですか?

4

1 に答える 1