找回密码
 立即注册

QQ登录

只需一步,快速开始

x_g
银牌会员   /  发表于:2015-8-11 20:11  /   查看:10508  /  回复:10
想做一个文本长度的检证 例如 如果传入的数据长度大于3位 则弹出错误信息
现在给TextBoxCell的Validator添加了textlengthvalidator 并且actions设定了 messageboxnotify
但是没有达到我想要的效果
因此我想知道是不是这边使用方法有误 而没有达到想要的效果
所以想请教一下关于validator的使用 是否有可参照的文档例子?

10 个回复

倒序浏览
dafo
版主   /  发表于:2015-8-12 09:10:00
沙发
默认的MessageBoxNotify验证是在Cell离开编辑状态的时候,如果想在编辑进行中进行验证你需要改变MessageBoxNotify.DoActionReason为EditedFormattedValueChanged。
回复 使用道具 举报
x_g
银牌会员   /  发表于:2015-8-12 10:40:00
板凳
回复 2楼dafo的帖子

如果是 在用 setvalue给单元格赋值的时候做验证 应该怎么写呢
回复 使用道具 举报
x_g
银牌会员   /  发表于:2015-8-12 12:59:00
地板
顶顶 求大神们回复
回复 使用道具 举报
dafo
版主   /  发表于:2015-8-12 13:38:00
5#
如果你是通过代码设置改变值,你需要在设置后调用ValidateCell或ValidateRow去强行触发验证逻辑。
代码如下:
  1.             this.gcMultiRow1.SetValue(0, 1, "aaaa");
  2.             this.gcMultiRow1.ValidateCell(0, 1, true);
复制代码
回复 使用道具 举报
x_g
银牌会员   /  发表于:2015-8-12 14:38:00
6#
回复 5楼dafo的帖子

用了您的方法 现在可以正常验证了 非常感谢

验证后设置valueprocess 的 valueprocessoption 为restore 但是验证后 画面上单元格里还是保留了错误的值 请问如果想实现restore上次的数值 该添加哪些代码 ?
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-8-12 16:07:00
7#
回复 1楼x_g的帖子

你好。
MultiRow中文文档地址:
http://www.gcpowertools.com.cn/downloads/PDF/MultiRowWin6.chm
DoActionReason类型可以选择。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
dafo
版主   /  发表于:2015-8-12 17:01:00
8#
如果你是通过代码改变Cell的值,是没有办法触发valueprocess的restore功能的,只能你自己缓存设置之前的值,发现验证不通过后自己再把缓存的值设回去。
实例代码:
  1.             object oldValue = this.gcMultiRow1.GetValue(0, 1);
  2.             this.gcMultiRow1.SetValue(0, 1, "aaaa");
  3.             if (!this.gcMultiRow1.ValidateCell(0, 1, true))
  4.             {
  5.                 this.gcMultiRow1.SetValue(0, 1, oldValue);
  6.             }
复制代码
回复 使用道具 举报
x_g
银牌会员   /  发表于:2015-8-13 11:58:00
9#
回复 8楼dafo的帖子

很可惜 没法触发valueprocess
只能用这种方法了

非常感谢
回复 使用道具 举报
dafo
版主   /  发表于:2015-8-13 13:37:00
10#
没法触发valueprocess的原因是因为用户通过了自己的业务逻辑控制value的改变,对于GcMutiRow来说它无法分辨这个值变化的原因,也就无法区分什么是你想回滚的旧值,期望你能够理解。

评分

参与人数 1金币 +200 收起 理由
Alice + 200 奖励200金币

查看全部评分

回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部