Kissmint 发表于 2015-2-27 10:33:00

关于EditOnKeystrokeOrShortcutKey情况下的IsCurrentCellDirty

EditOnKeystrokeOrShortcutKey情况下,如果一个cell还没有进EditMode(没有双击进cell里)就向这个cell里粘贴一个值,然后离开焦点时,IsCurrentCellDirty还是false,实际上这时它的值已经变了,这种情况下该如何判断一个cell的值变没变过呢?

Alice 发表于 2015-2-27 13:57:00

回复 1楼Kissmint的帖子

在粘贴的过程中不会设置Dirty,但是会触发CellValueChanged事件。
因此可以自己写代码在CellValueChanged事件里设置Cell的Dirty。

Kissmint 发表于 2015-2-27 14:36:00

是用这个吗?NotifyCurrentCellDirty(True)

Kissmint 发表于 2015-2-27 14:48:00

我在CellValueChanged事件里NotifyCurrentCellDirty(True),这时IsCurrentCellDirty是true,但是在离开焦点是CellValidating里IsCurrentCellDirty还是false

Alice 发表于 2015-2-27 17:30:00

回复 4楼Kissmint的帖子

是调用NotifyCurrentCellDirty,但在CellValidating的时候数据还未提交,Validating给客户一个时机,用来Cancel数据,因此这不是一个获取IsCurrentCellDirty的好的时机。
如果是离开焦点,可以尝试类似EndEdit的相关事件。
页: [1]
查看完整版本: 关于EditOnKeystrokeOrShortcutKey情况下的IsCurrentCellDirty