找回密码
 立即注册

QQ登录

只需一步,快速开始

高级大宅男
初级会员   /  发表于:2016-4-20 09:45  /   查看:4286  /  回复:6
如题,C1DataGrid的CommittingEdit事件中调用e.cancle=true又会重新触发CommittingEdit事件?
我想在CommittingEdit事件中验证单元格内容,如果有错就不提交,并且取消之前的编辑,值回到编辑前,单元格为获得焦点状态并全选。
然后点回车再次触发CommittingEdit事件。


该如何处理?

6 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2016-4-20 12:08:55
沙发
首先进入编辑状态后,鼠标点击其他地方离开该单元格的编辑状态,触发CommintEdit事件,该事件里调用了e.cancel=true。我测试没有重现事件重新出发的问题。

另外C1DataGrid有Validation的功能针对校验,你可以参考随机安装示例,路径如下:
\Documents\ComponentOne Samples\WPF\C1.WPF.DataGrid\CS\DataGridSamples\DataInput\Validation
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
高级大宅男
初级会员   /  发表于:2016-4-20 12:26:57
板凳
Alice 发表于 2016-4-20 12:08
首先进入编辑状态后,鼠标点击其他地方离开该单元格的编辑状态,触发CommintEdit事件,该事件里调用了e.can ...

我刚又试了一下,点击其他地方离开单元格的情况下不会,但是编辑完后按回车键就会发生我说的情况,麻烦您再看下?
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2016-4-20 19:04:16
地板
高级大宅男 发表于 2016-4-20 12:26
我刚又试了一下,点击其他地方离开单元格的情况下不会,但是编辑完后按回车键就会发生我说的情况,麻烦您 ...

按照您的描述步骤,重现了该问题。
如何解决我们检查后给您回复。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2016-4-27 14:54:00
5#
很抱歉这个问题我还没找到合适的解决方案。

不知道您那里的进展如何?
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
高级大宅男
初级会员   /  发表于:2016-4-28 15:33:47
6#
Alice 发表于 2016-4-27 14:54
很抱歉这个问题我还没找到合适的解决方案。

不知道您那里的进展如何?

我暂且通过在PreviewKeyDown中设置Flag,然后在Committing中判断的方法勉强解决了。
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2016-4-28 16:28:51
7#
高级大宅男 发表于 2016-4-28 15:33
我暂且通过在PreviewKeyDown中设置Flag,然后在Committing中判断的方法勉强解决了。

好的,谢谢反馈。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

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