找回密码
 立即注册

QQ登录

只需一步,快速开始

Kissmint

银牌会员

18

主题

36

帖子

2730

积分

银牌会员

积分
2730

活字格认证

Kissmint
银牌会员   /  发表于:2015-2-27 10:33  /   查看:6065  /  回复:4
EditOnKeystrokeOrShortcutKey情况下,如果一个cell还没有进EditMode(没有双击进cell里)就向这个cell里粘贴一个值,然后离开焦点时,IsCurrentCellDirty还是false,实际上这时它的值已经变了,这种情况下该如何判断一个cell的值变没变过呢?

4 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2015-2-27 13:57:00
沙发
回复 1楼Kissmint的帖子

在粘贴的过程中不会设置Dirty,但是会触发CellValueChanged事件。
因此可以自己写代码在CellValueChanged事件里设置Cell的Dirty。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
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
5#
回复 4楼Kissmint的帖子

是调用NotifyCurrentCellDirty,但在CellValidating的时候数据还未提交,Validating给客户一个时机,用来Cancel数据,因此这不是一个获取IsCurrentCellDirty的好的时机。
如果是离开焦点,可以尝试类似EndEdit的相关事件。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部