我使用DataGridViewCheckBoxColumn创建了一个datagridview。最初我读入我的数据并将复选框的值设置为true(如果数据存在),如果不存在,则设置为false。这工作正常,但如果我将复选框的状态更改为选中或取消选中以前的状态,我无法读取此更改。当我尝试保存它始终显示的数据时,复选框的原始状态。
如何在点击复选框后重新阅读复选框的值?
我在这里尝试了解决方案: How to check a checkbox created with VB's DataGridViewCheckBoxColumn on Runtime
使用:DirectCast(DataGridView1(0, 2).Value, Boolean)
但它对我不起作用。当我看到它时,我总是得到复选框的原始状态。如果最初选中该框并取消选中该框,则该值仍将显示为True。
答案 0 :(得分:0)
您可能正在查看错误的行(您只查看索引为0的第一行)。您可以使用DataGridView_CellEndEdit事件来查找复选框的值,如此...
If e.ColumnIndex = 2 Then 'this is the columnIndex of your checkbox column
If MyBindingSource.Current("CheckBoxColumnName") = true then
'the column is checked, so do something
End If
End If