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 对象。

inlicloud48元/月,云主机,2核1G/200Mbps,可选安徽/上海联通/广州移动/江门移动NAT

inlicloud怎么样?inlicloud(引力主机)主要产品为国内NAT系列VPS,目前主要有:上海联通NAT(200Mbps带宽)、宿州联通NAT(200Mbps带宽)、广州移动NAT(200Mbps带宽)。根据官方的说法国内的NAT系列VPS不要求备案、不要求实名、对中转要求也不严格,但是,禁止任何形式的回国!安徽nat/上海联通/广州移动/江门移动nat云主机,2核1G/200Mbps仅...

vpsdime:VPS内存/2核/VPS,4G内存/2核/50gSSD/2T流量/达拉斯机房达拉斯机房,新产品系列-Windows VPS

vpsdime上了新产品系列-Windows VPS,配置依旧很高但是价格依旧是走低端线路。或许vpsdime的母公司Nodisto IT想把核心产品集中到vpsdime上吧,当然这只是站长个人的猜测,毕竟winity.io也是专业卖Windows vps的,而且也是他们自己的品牌。vpsdime是一家新上来不久的奇葩VPS提供商,实际是和backupspy以及crowncloud等都是同一家公司...

BuyVM迈阿密KVM上线,AMD Ryzen 3900X+NVMe硬盘$2/月起

BuyVM在昨天宣布上线了第四个数据中心产品:迈阿密,基于KVM架构的VPS主机,采用AMD Ryzen 3900X CPU,DDR4内存,NVMe硬盘,1Gbps带宽,不限制流量方式,最低$2/月起,支持Linux或者Windows操作系统。这是一家成立于2010年的国外主机商,提供基于KVM架构的VPS产品,数据中心除了新上的迈阿密外还包括美国拉斯维加斯、新泽西和卢森堡等,主机均为1Gbps带...

causesvalidation为你推荐
2g内存价格一个2G内存多少钱?苹果x和xr哪个好苹果x和苹果xr买哪个好传奇类手游哪个好传奇哪个版本比较好玩 最好玩的传奇手游排行榜雅思和托福哪个好考托福和雅思哪个好考 急。。。。。行车记录仪哪个好行车记录仪哪个好网络机顶盒哪个好什么牌子的网络机顶盒好用?空间登录页面怎样用网页登录到自己的QQ空间?qqkj空间登录怎么限制qq空间登录.辽宁联通网上营业厅的联通营业厅怎么走东莞电信宽带东莞电信宽带资费怎样?
vps是什么 132邮箱 GGC 美国翻墙 回程路由 patcha typecho 建站代码 铁通流量查询 cpanel空间 中国电信测速112 linux空间 卡巴斯基试用版 服务器监测 多线空间 中国电信宽带测速器 1元域名 徐州电信 闪讯网 hosting24 更多