button.CausesValidation 的作用

本文详细探讨了.NET框架下button.CausesValidation属性的功能和用法,它主要用于控制表单验证。当该属性设置为true时,点击按钮会触发相关文本框的验证过程,确保输入的数据符合预设规则。通过合理使用此属性,开发者可以实现更健壮的用户输入验证机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

帮助所说,button.CausesValidation
获取或设置一个值,该值指示在单击 Button 控件时是否执行了验证。
请问,验证与不验证有什么不同,具体怎么表现
 
 
回复次数: 12

 

#2楼 得分:0回复于:2009-05-20 08:31:25
怎么光顶没人解答下
 
#3楼 得分:10回复于:2009-05-20 09:24:55
CausesValidation 为 True 时,表示按钮被点击后,执行页面上的验证。如果为 False,表示这个按钮被点击时不触发页面上的验证。

例如,一个页面上,一些数据更新的时候,需要验证数据的有效性;如果是查询数据,则不需要验证所有的控件值。
 
#4楼 得分:0回复于:2009-05-20 17:19:22
引用 3 楼 CloneCenter 的回复:
CausesValidation 为 True 时,表示按钮被点击后,执行页面上的验证。如果为 False,表示这个按钮被点击时不触发页面上的验证。

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


例如更新的时候,比如我某个textbox是输入数值型的,这个时候是我写代码来验证有效性的吧?和用CausesValidation =True 验证有效性有什么区别吗?你说的数据有效性具体具体怎么理解?谢谢
 
#5楼 得分:3回复于:2009-05-20 17:31:11
引用 4 楼 taotie1225 的回复:
例如更新的时候,比如我某个textbox是输入数值型的,这个时候是我写代码来验证有效性的吧?和用CausesValidation =True 验证有效性有什么区别吗…

这要和.net验证控件一起使用!
你验证数值型的,可用.net的CompareValidator验证控件(当然其他也可以),只要设置一下就可以了!!
这时如果Button的CausesValidation=true;则会首先执行验证控件,
如果验证不能通过,则不会执行Button下的代码!
这时如果Button的CausesValidation=false;
则无条件执行Button下的代码!

 
#6楼 得分:0回复于:2009-05-21 08:46:08
回上楼:
这时如果Button的CausesValidation=true;则会首先执行验证控件,
如果验证不能通过,则不会执行Button下的代码!

你这里说的先执行验证控件,这里执行的具体内容是什么吗?什么情况下会有验证不通过?
 
#7楼 得分:3回复于:2009-05-21 09:00:06
如果你对某一个控件添加了Control.Validating 事件或Control.Validated 事件,那么对于设置了CausesValidation 为True的控件得到焦点时将引发验证事件发生,而对没有设置CausesValidation 或CausesValidation 为False的控件得到焦点时事件不发生。一般对于帮助、取消之类的控件都设置CausesValidation False,而确定之类的设置为True。
 
#8楼 得分:0回复于:2009-05-21 17:31:02
引用 7 楼 hbxtlhx 的回复:
如果你对某一个控件添加了Control.Validating 事件或Control.Validated 事件,那么对于设置了CausesValidation 为True的控件得到焦点时将引发验证事件发生,而对没有设置CausesValidation 或CausesValidation 为False的控件得到焦点时事件不发生。一般对于帮助、取消之类的控件都设置CausesValidation False,而确定之类的设置为True。


得到焦点引发验证事件,这个验证事件具体做什么呢?
 
#9楼 得分:0回复于:2009-05-21 20:43:31
本人也想知道这个验证事件的工作机制,是不是只是一个验证的一个框架,代码要自己写吗?还是系统有一套验证的固定格式来套用?
 
#10楼 得分:0回复于:2009-05-22 08:42:08
顶上去
 
#11楼 得分:0回复于:2009-05-22 09:42:58
用验证控件,你就知道了。
参考MSDN: http://msdn.microsoft.com/zh-cn/library/7kh55542(VS.80).aspx
#12楼 得分:1回复于:2009-05-22 23:09:46
引用 6 楼 taotie1225 的回复:
回上楼:
这时如果Button的CausesValidation=true;则会首先执行验证控件,
如果验证不能通过,则不会执行Button下的代码!

你这里说的先执行验证控件,这里执行的具体内容是什么吗?什么情况下会有验证不通过?

验证执行的具体内容看你的设置!例如设置了只能输入数字,则你输入字母就验证通不过!
就不会执行Button下的代码!!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值