什么是button.CausesValidation

taotie1225 2009-05-19 04:02:55
帮助所说,button.CausesValidation
获取或设置一个值,该值指示在单击 Button 控件时是否执行了验证。
请问,验证与不验证有什么不同,具体怎么表现
...全文
1005 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
liujie1575720297 2011-09-22
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 liujie1575720297 的回复:]
CausesValidation 该属性应用在Web服务器控件。 如果设置为false 表示如果该Web服务器控件触发的页面回发就不检验数据验证控件的验证。
当然选择性的触发验证还有另一种方式,那就是分组ValidationGroup。
[/Quote]
通常使用数据验证控件,页面回发必然会激发验证控件的验证。为了不必要的验证提供两种方式来避开验证
liujie1575720297 2011-09-22
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 xgchou 的回复:]
本人也想知道这个验证事件的工作机制,是不是只是一个验证的一个框架,代码要自己写吗?还是系统有一套验证的固定格式来套用?
[/Quote]
,.net提供的共有6种验证:
1.非空验证控件
2.比较验证控件
3.正则表达式验证控件
4.自定义验证控件
5.汇总错误信息控件
6.范围验证控件
liujie1575720297 2011-09-22
  • 打赏
  • 举报
回复
CausesValidation 该属性应用在Web服务器控件。 如果设置为false 表示如果该Web服务器控件触发的页面回发就不检验数据验证控件的验证。
当然选择性的触发验证还有另一种方式,那就是分组ValidationGroup。
koukoujiayi 2009-05-22
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 taotie1225 的回复:]
回上楼:
这时如果Button的CausesValidation=true;则会首先执行验证控件,
如果验证不能通过,则不会执行Button下的代码!

你这里说的先执行验证控件,这里执行的具体内容是什么吗?什么情况下会有验证不通过?
[/Quote]
验证执行的具体内容看你的设置!例如设置了只能输入数字,则你输入字母就验证通不过!
就不会执行Button下的代码!!
CloneCenter 2009-05-22
  • 打赏
  • 举报
回复
用验证控件,你就知道了。
参考MSDN:http://msdn.microsoft.com/zh-cn/library/7kh55542(VS.80).aspx
taotie1225 2009-05-22
  • 打赏
  • 举报
回复
顶上去
北京的雾霾天 2009-05-21
  • 打赏
  • 举报
回复
如果你对某一个控件添加了Control.Validating 事件或Control.Validated 事件,那么对于设置了CausesValidation 为True的控件得到焦点时将引发验证事件发生,而对没有设置CausesValidation 或CausesValidation 为False的控件得到焦点时事件不发生。一般对于帮助、取消之类的控件都设置CausesValidation False,而确定之类的设置为True。
taotie1225 2009-05-21
  • 打赏
  • 举报
回复
回上楼:
这时如果Button的CausesValidation=true;则会首先执行验证控件,
如果验证不能通过,则不会执行Button下的代码!

你这里说的先执行验证控件,这里执行的具体内容是什么吗?什么情况下会有验证不通过?
xgchou 2009-05-21
  • 打赏
  • 举报
回复
本人也想知道这个验证事件的工作机制,是不是只是一个验证的一个框架,代码要自己写吗?还是系统有一套验证的固定格式来套用?
taotie1225 2009-05-21
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 hbxtlhx 的回复:]
如果你对某一个控件添加了Control.Validating 事件或Control.Validated 事件,那么对于设置了CausesValidation 为True的控件得到焦点时将引发验证事件发生,而对没有设置CausesValidation 或CausesValidation 为False的控件得到焦点时事件不发生。一般对于帮助、取消之类的控件都设置CausesValidation False,而确定之类的设置为True。
[/Quote]

得到焦点引发验证事件,这个验证事件具体做什么呢?
CloneCenter 2009-05-20
  • 打赏
  • 举报
回复
CausesValidation 为 True 时,表示按钮被点击后,执行页面上的验证。如果为 False,表示这个按钮被点击时不触发页面上的验证。

例如,一个页面上,一些数据更新的时候,需要验证数据的有效性;如果是查询数据,则不需要验证所有的控件值。
taotie1225 2009-05-20
  • 打赏
  • 举报
回复
怎么光顶没人解答下
koukoujiayi 2009-05-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 taotie1225 的回复:]
例如更新的时候,比如我某个textbox是输入数值型的,这个时候是我写代码来验证有效性的吧?和用CausesValidation =True 验证有效性有什么区别吗…
[/Quote]
这要和.net验证控件一起使用!
你验证数值型的,可用.net的CompareValidator验证控件(当然其他也可以),只要设置一下就可以了!!
这时如果Button的CausesValidation=true;则会首先执行验证控件,
如果验证不能通过,则不会执行Button下的代码!
这时如果Button的CausesValidation=false;
则无条件执行Button下的代码!

taotie1225 2009-05-20
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 CloneCenter 的回复:]
CausesValidation 为 True 时,表示按钮被点击后,执行页面上的验证。如果为 False,表示这个按钮被点击时不触发页面上的验证。

例如,一个页面上,一些数据更新的时候,需要验证数据的有效性;如果是查询数据,则不需要验证所有的控件值。
[/Quote]

例如更新的时候,比如我某个textbox是输入数值型的,这个时候是我写代码来验证有效性的吧?和用CausesValidation =True 验证有效性有什么区别吗?你说的数据有效性具体具体怎么理解?谢谢

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧