如何處理DataGridViewCheckBoxColumn
中單元格的CheckedChanged
事件?處理.NET DataGridViewCheckBox更改事件
注意:如果適用,我更喜歡VB.NET對C#的回答,但我也會接受。
如何處理DataGridViewCheckBoxColumn
中單元格的CheckedChanged
事件?處理.NET DataGridViewCheckBox更改事件
注意:如果適用,我更喜歡VB.NET對C#的回答,但我也會接受。
嘗試將處理程序附加到DataGridView.CellValueChanged事件;當GridView中的任何單元格發生更改時它會被觸發,並會提供有關特定單元格更改的處理程序信息。如果單元格是DataGridViewCheckBoxCell,則唯一可能發生的數據更改是該複選框已設置或清除。您可以將該信息委託給更具體的處理程序方法,可以通過直接調用或通過提高其他處理程序偵聽的自己的事件來進行。
您將必須處理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
只是爲了您的信息,我添加了輸出到調試控制檯的'Debug.Print'語句,單元格的格式爲'Cell L ## has changed'。無論如何,這是非常基本的。 – 2010-09-09 16:46:24
兩個答案基本相同,我選擇了第一個。 – Steven 2010-09-09 17:50:21