causesvalidationValidate事件

causesvalidation  时间:2021-01-04  阅读:()

ASP.NET ValidationGroup属性的作用和用法是什么?

如果三个控件的ValidationGroup都是"aa",都被验证控件验证着。

一个按钮的ValidationGroup也是"aa" 当按钮按下时(即POST方法提交),上面说的三个控件就被验证控件验证

page.isvalid

Page.IsValid 是在 Page_Load 发生之后才会处理 所以在 Page_Load 中调用它是无用的 应该在 OnClick , OnSelectedIndexChanged 这类的服务器控件事件中调用

这里加上CausesValidation="True" 具体有什么用?

这个界面上应该有验证控件, 你这个按钮应该是在一个列表控件里的吧。

说明要想进入这个列表的后台,先对列表的某一个输入的值进行了验证!通过了才进入后台!

asp.net中,CauseValidation是什么意思??

Control.CausesValidation 属性 获取或设置一个值,该值指示控件是否会引起在任何需要在接收焦点时执行验证的控件上执行验证。

下面的代码示例创建一个 Windows 窗体,该窗体添加在文本框中输入的数字。

在显示结果之前会先验证文本框。

private void AddHandlers() { // Add the Validating and Validated handlers for textboxes. myTextBox1.Validating += new System.ComponentModel.CancelEventHandler(myTextBox1_Validating); myTextBox1.Validated += new System.EventHandler(myTextBox1_Validated); myTextBox2.Validating += new System.ComponentModel.CancelEventHandler(myTextBox2_Validating); myTextBox2.Validated += new System.EventHandler(myTextBox2_Validated); myTextBox1.CausesValidationChanged += new System.EventHandler(myTextBox1_CausesValidationChanged); myTextBox2.CausesValidationChanged += new System.EventHandler(myTextBox2_CausesValidationChanged); if(myTextBox1.CausesValidation == true && myTextBox2.CausesValidation == true) { button1.Text = "Disable Validation"; myLabel.Text = "Validation Enabled"; this.Focus(); } } private void myTextBox1_Validating(object sender,System.ComponentModel.CancelEventArgs e) { if(!CheckIfTextBoxNumeric(myTextBox1)) { myLabel.Text = "Has to be numeric"; e.Cancel = true; } } private void myTextBox1_Validated(object sender,System.EventArgs e) { myLabel.Text = "Validated first control"; } private void myTextBox2_Validating(object sender,System.ComponentModel.CancelEventArgs e) { if(!CheckIfTextBoxNumeric(myTextBox2)) { myLabel.Text = "Has to be numeric"; e.Cancel = true; } } private void myTextBox2_Validated(object sender,System.EventArgs e) { myLabel.Text = "Validated second control"; } private void myTextBox1_CausesValidationChanged(object sender,System.EventArgs e) { myLabel.Text = "CausesValidation property was changed for First Textbox"; } private void myTextBox2_CausesValidationChanged(object sender,System.EventArgs e) { myLabel.Text = "CausesValidation property was changed for Second Textbox"; } private bool CheckIfTextBoxNumeric(TextBox myTextBox1) { bool isValid = true; if(myTextBox1.Text == "") { isValid = false; } else { for(int i=0; i< myTextBox1.Text.Length;i++) { if(!(System.Char.IsNumber(myTextBox1.Text[i]))) { myTextBox1.Text = ""; isValid = false; break; } } } return isValid; } private void myButtonAdd_Click(object sender, System.EventArgs e) { try { int result = Convert.ToInt32(myTextBox1.Text) + Convert.ToInt32(myTextBox2.Text); myLabel.Text = result.ToString(); } catch(Exception myException) { myLabel.Text = "Exception : " + myException.Message; } } private void button1_Click(object sender, System.EventArgs e) { if(myTextBox1.CausesValidation == false && myTextBox2.CausesValidation == false) { myTextBox1.CausesValidation = true; myTextBox2.CausesValidation = true; button1.Text = "Disable Validation"; myLabel.Text = "Validation Enabled"; } else if(myTextBox1.CausesValidation == true && myTextBox2.CausesValidation == true) { myTextBox1.CausesValidation = false; myTextBox2.CausesValidation = false; button1.Text = "Enable Validation"; myLabel.Text = "Validation Disabled"; } }

Validate事件

Validate 事件和CausesValidation 属性协同工怍,防止控件失去焦点直到满足确定的准则。

重点CausesValidation属性值设置为True时,Validate事件才发生。

Validate事件、 CausesValidation属性示例该示例使用三个控件来示范Validate 事件和CausesValidation 属性的使用。

在缺省情况下,两个TextBox 控件的CausesValidatio n属性设置为 True,这样当您想把焦点从一个TextBox转换到另一个时,Validate 事件发生。

如果 Text1没有包含日期或 Text2没有包含一个大于10的数字,焦点的转换将被阻止。

由于 Command1控件的CausesValidation 属性设置为 False,因此您无论何时都可以单击Help 按钮。

要试验该示例,在窗体中放置一个CommandButton 和两个TextBox 控件,将代码粘接到窗体的“声明”部分并运行此工程。

按Tab 键尝试转换焦点。

Private Sub Form_Load() '设置按钮的CausesValidation属性为False。

当用户 '单击按钮时,Validate事件不发生。

'设置按钮的Caption属性为“帮助”。

With Command1 .CausesValidation = False .Caption = "Help" End With Show With Text1 '选择Text1的文本并为它设置焦点。

.SelLength = Len(Text1.Text) .SetFocus End WithEnd SubPrivate Sub Command1_Click() '当单击此按钮时给出用户帮助信息。

MsgBox _ "Text1 must be set to a date." & VbCrLF & _ "Text2 must be a number less than 10."End SubPrivate Sub Text1_Validate(KeepFocus As Boolean) '如果值不是一个日期,则保持焦点,除非用户 '单击Help。

If Not IsDate(Text1.Text) Then KeepFocus = True MsgBox "Please insert a date in this field.", , "Text1" End ifEnd Sub Private Sub Text2_Validate(KeepFocus As Boolean) '如果值是一个大于10的数字,保持焦点。

If Not IsNumeric(Text2.Text) Or Val(Text2.Text) > 10 Then KeepFocus = TrueMsgBox _"Please insert a number less than or equal to 10.", , "Text2" End IfEnd Sub应用于: CheckBox 控件ComboBox 控件CommandButton 控件DirListBox 控件DriveListBox 控件FileListBox 控件HScrollBar、VScrollBar 控件ListBox 控件Multimedia MCI 控件OptionButton 控件PictureBox 控件TextBox 控件相关基础知识: 对象表达式说明具体对象的表达式,可以包含对象的容器。

例如,应用程序可以拥有 Application 对象,其中包含 Document 对象,而 Document 对象又包含 Text 对象。

LetBox:美国洛杉矶/新泽西AMD大硬盘VPS,10TB流量,充值返余额,最低3.3美元两个月

LetBox此次促销依然是AMD Ryzen处理器+NVME硬盘+HDD大硬盘,以前是5TB月流量,现在免费升级到10TB月流量。另外还有返余额的活动,如果月付,月付多少返多少;如果季付或者半年付,返25%;如果年付,返10%。依然全部KVM虚拟化,可自定义ISO系统。需要大硬盘vps、大流量vps、便宜AMD VPS的朋友不要错过了。不过LetBox对帐号审核严格,最好注册邮箱和paypal帐号...

cera:秋季美国便宜VPS促销,低至24/月起,多款VPS配置,自带免费Windows

介绍:819云怎么样?819云创办于2019,由一家从2017年开始从业的idc行业商家创办,主要从事云服务器,和物理机器819云—-带来了9月最新的秋季便宜vps促销活动,一共4款便宜vps,从2~32G内存,支持Windows系统,…高速建站的美国vps位于洛杉矶cera机房,服务器接入1Gbps带宽,采用魔方管理系统,适合新手玩耍!官方网站:https://www.8...

修罗云50元/月起香港大宽带NAT VPS,香港沙田建站2核2G5M仅70元/月起

修罗云怎么样?修罗云是一家国内老牌商家,修罗云商家以销售NAT机器起家,国内的中转机相当不错,给的带宽都非常高,此前推荐的也都是国内NAT VPS机器。今天,云服务器网(www.yuntue.com)小编主要介绍一下修罗云的香港云服务器,适合建站,香港沙田cn2云服务器,2核2G,5M带宽仅70元/月起,同时香港香港大带宽NAT VPS低至50元/月起,性价比不错,可以尝试一下!点击进入:修罗云官...

causesvalidation为你推荐
软银孙正义马云富还是孙正义富美国10次啦导航GPS的四大导航录屏软件哪个好现在什么录屏软件好,不卡的,推荐一个,谢谢。手机杀毒软件哪个好什么手机杀毒软件最好用?游戏盒子哪个好游戏盒子哪个好?手机炒股软件哪个好手机股票交易哪个平台最好海克斯皮肤哪个好诺手二周年皮肤好不好,和海克斯那个比哪个好,二周年属于稀有吗播放器哪个好播放器哪个好用美国国际集团世界五百强企业前五十名是哪些?qq空间登录网页版网页版QQ怎么登陆
网站域名 域名论坛 韩国vps 域名解析文件 什么是域名地址 adman typecho 免费ftp空间申请 三拼域名 个人域名 爱奇艺会员免费试用 双线asp空间 贵阳电信测速 服务器防火墙 宿迁服务器 黑科云 美国服务器 时间同步服务器 卡巴下载 screen 更多