以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- Validating 事件验证问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=7359) |
-- 作者:i52117 -- 发布时间:2010/6/10 13:42:00 -- Validating 事件验证问题 在Validating事件里设置拦截 输入错误禁止离开,如何实现按Esc键忽略验证 可以跳出来? 谢谢 |
-- 作者:kylin -- 发布时间:2010/6/10 14:14:00 -- Validating 离开控件之前执行,通常用于验证控件的内容。 e参数属性: Sender:返回触发事件的控件 示例 如果将某个DateTimePicker(日期输入框)的Validating事件设置为: If e.Sender.Value Is Nothing Thene.Cancel = True End If 这样直到你在该DateTimePicker中输入内容,否则你将不能离开它去选择其他控件。 但是验证也有例外的时候,例如窗口中通常有一个取消按钮,单击这个按钮,最好不用执行任何控件的Validating事件,否则我明明需要取消操作,却还得在取消之前还得输入一些内容,这不符合通常的操作习惯。为解决这个问题,只需在窗口设计的时候,将这个按钮的"执行验证"属性设为False即可,该属性位于“行为”分组中。 |
-- 作者:狐狸爸爸 -- 发布时间:2010/6/10 14:32:00 -- 默认esc就会忽略吧 |
-- 作者:i52117 -- 发布时间:2010/6/10 16:08:00 -- 以下是引用狐狸爸爸在2010-6-10 14:32:00的发言:
默认esc就会忽略吧 狐爸加上此功能吧 不然很麻烦
或者按下Esc 时 把控件的执行验证属性设为 false (不知是否可行 不会写此代码) |
-- 作者:狐狸爸爸 -- 发布时间:2010/6/10 16:21:00 -- 没有办法的,你应该从自己的Validating事件代码下手,例如比较控件内容,如果没有变化就不验证了。 |