我目前正在使用带有SQL后端的VB.NET Visual Studio Professional。我有一个DataGridView
,用于填充列位置0和1中有两个CheckBox
列的部件列表.0位置的复选框列标记为“完成”,位置1中的复选框列标记为如“失踪”。当操作员切割零件时,他们会将该行标记为完整或缺失,并在任一列中使用复选框。如果缺少某个部件,那么当用户单击“缺失”列中的复选框时,它会打开一个新表单作为对话框结果。此时,将打开新表单,并检查缺少列下该行中的复选框。但是,操作员可以单击对话框结果上的按钮来取消输入。我的问题出现在这里。单击取消按钮后,表单将关闭,但原始DGV上的复选框仍保持检查状态,由于某种原因,我无法取消选中它。 DGV是绑定到sql表的数据,但前两个复选框列是在设计表单中手动添加的。关于如何取消选中此复选框的任何建议?这是我的代码:
ElseIf dr = Windows.Forms.DialogResult.Cancel Then
MsgBox(Row_Index)
MsgBox(DGVList.CurrentCell.ColumnIndex)
'DGVList(Row_Index, 1).Value = True
DGVList(DGVList.CurrentCell.ColumnIndex, DGVList.CurrentCell.RowIndex).Value = False
'DGVList("Missing", Row_Index).Value = False
MsgBox("Hot part has been canceled by user. This part will not be marked as missing.")
End If
我的row_index
声明在sub的顶部,两个消息框似乎都与正确的位置相关联。为了增加这个大脑的戏弄,在第2行和第4行,代码可以工作,但没有其他地方。
答案 0 :(得分:0)
我明白了。我不知道为什么我必须这样做,但它有效。
Dim val1 as DataGridViewCheckBoxCell = DGVList(DGVList.CurrentCell.ColumnIndex, DGVList.CurrentCell.RowIndex)
val1.value = false