有 2 个不同的 UI 概念:CellValueChanging 与 CellValueChanged。
引自 DevExpress 文档:
每次更改编辑的值(用户键入或删除字符,从下拉列表中选择值等)时都会引发 CellValueChanging 事件。
另一方面,当用户通过按回车键或单击活动单元格外部完成单元格编辑时,会引发 CellValueChanged。
现在我的问题是,我有一个组合框类型列,我想总是跳过 CellValueChanging 并进行最终更改。当前的行为是当用户从组合框中选择一个项目时,更改不会立即生效(例如,视图不会根据更改而恢复)。在用户按 Enter 键或单击单元格外部之前,不接受更改。
---------------07/26/2013 2:25PM update---------------
抱歉我之前的问题描述误导了大家,所以我会改写的。
这是当前的行为:
Pic1:开始状态。行按目标的字母顺序排序。
Pic2:将第二行值从 B 更改为 D
图3:鼠标左键单击项目D后,下拉菜单消失,单元格值变为D。但是,行没有被重新排序
图 4:在单元格外部单击或按 Enter 后,行将被重新排序。
我想要实现的是跳过 Pic3 中的步骤。换句话说,我希望立即提交任何更改,而无需进行额外的记事本或鼠标点击。
我在这里展示的是我的应用程序的简化示例。我无法将 CellValueChanged 事件处理程序逻辑移动到 CellValueChanging 或 EditValueChanged,因为它会导致一些错误。