我在VB工作。Net将用户功能编程为
DataGridView
.目前,我正在尝试允许用户更新显示在
数据表格控件
通过编辑单元格中的内容。
现在我有一种方法可以检测用户何时开始编辑单元格:
Private Sub dataTable_CellBeginEdit(ByVal sender As Object, ByVal e As DataGridViewCellCancelEventArgs) Handles dataTable.CellBeginEdit
oldCellVal = dataTable.Rows(e.RowIndex).Cells(e.ColumnIndex).Value
End Sub
该方法的要点是将旧数据存储在内存中的单元格中,以便在用户决定不编辑单元格时,可以在以后恢复数据。
现在我不知道如何设置用户完成编辑时的方法。我知道有一个
CellEndEdit
我可以为事件创建处理程序,但在该方法中,我如何检测它们是如何离开单元格的?
我想设置它,这样如果我的用户按下
进来
键,然后才提交他们的编辑。如果他们使用箭头键或ESC键退出单元格,他们会收到一个“你想停止编辑吗?”促使这听起来像是我需要一个按键事件,但如果我做了那种事件,我如何正确地检测被修改的单元格?我需要知道更新单元格的行和列索引,以便正确提交更改。
那我该怎么做呢?
KeyPress
或
CellEndEdit
? 还是有什么我没有考虑的?