如何处理CheckedChanged
中的单元格的DataGridViewCheckBoxColumn
事件?
注意:如果适用,我更喜欢VB.NET的答案而不是C#,但我会接受。
答案 0 :(得分:2)
尝试将处理程序附加到DataGridView.CellValueChanged事件;当GridView中的任何单元格发生更改时,它会被触发,并将提供有关更改的特定单元格的处理程序信息。如果单元格是DataGridViewCheckBoxCell,则唯一可能发生的数据更改是设置或清除复选框。您可以通过直接调用或通过提升其他处理程序侦听的事件来将该信息委托给更具体的处理程序方法。
答案 1 :(得分:2)
您必须处理CellValueChanged
事件。
此代码对您有所帮助。
Private Sub DataGridView1_CellValueChanged(ByVal sender As Object, ByVal e As DataGridViewCellEventArgs) Handles DataGridView1.CellValueChanged
Dim checkColumnIndex = 1 'replace this with the appropriate method to get the checkbox column's index'
If e.ColumnIndex = checkColumnIndex Then
'do something
Debug.Print("Cell " & Chr(e.ColumnIndex + 65) & e.RowIndex & " has changed.")
End If
End Sub