Problem: 我想提交一个编辑,当用户有一个datagridview组合框单元时,即它将是常规组合框单元的"Selection Committed"
What I've Tried: 因此基于很多stackflow问题(如Datagridview comboBox not selecting on click/edit),他们查看所谓的事件,如所选索引已更改,单元格值已更改,单元格内容单击以及编辑控件显示 . 在这些事件处理程序中,我尝试提交编辑,但它会调用此事件 after 另一个单元格已单击,而不是在单元格中选择了所选项目 . 我've already tried making a 321506 handler and definition, but since the combobox cell doesn't有这个事件,我在vb.net中收到错误
这是一个示例代码段:
Private Sub editingComboBox_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs)
editCameraTable.CommitEdit(DataGridViewDataErrorContexts.Commit)
editCameraTable.EndEdit()
End Sub
在单击其他单元格之前不会调用此方法 . 有关如何为datagridviewcomboboxcell标记此事件的任何建议?
1 回答
Handel的CellEndEdit动作 . 是的,只有在此人点击其他地方后才会触发;但是将它与keydown预览相结合 . 人们在文本编辑结束时自然地单击return,您可以使用它来触发更新 . gridview中的单元格无法确定某人何时完成输入,因此需要该人员在编辑提交发生之前单击其中 . 唯一的另一种方法是使用一个可以在每个keydown事件上重置的计时器,并在键入进入空闲状态时进行更新 .