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

BlueHost主机商年中618活动全场低至五折

BlueHost 主机商在以前做外贸网站的时候还是经常会用到的,想必那时候有做外贸网站或者是选择海外主机的时候还是较多会用BlueHost主机商的。只不过这些年云服务器流行且性价比较高,于是大家可选择商家变多,但是BlueHost在外贸主机用户群中可选的还是比较多的。这次年中618活动大促来袭,毕竟BLUEHOST商家目前中文公司设立在上海,等后面有机会也过去看看。他们也会根据我们的国内年中促销发...

RackNerd美国大硬盘服务器促销:120G SSD+192TB HDD,1Gbps大带宽,月付$599,促销美国月付$服务器促销带宽

racknerd怎么样?racknerd最近发布了一些便宜美国服务器促销,包括大硬盘服务器,提供120G SSD+192TB HDD,有AMD和Intel两个选择,默认32G内存,1Gbps带宽,每个月100TB流量,5个IP地址,月付$599。价格非常便宜,需要存储服务器的朋友可以关注一下。RackNerd主要经营美国圣何塞、洛杉矶、达拉斯、芝加哥、亚特兰大、新泽西机房基于KVM虚拟化的VPS、...

恒创科技SonderCloud,美国VPS综合性能测评报告,美国洛杉矶机房,CN2+BGP优质线路,2核4G内存10Mbps带宽,适用于稳定建站业务需求

最近主机参考拿到了一台恒创科技的美国VPS云服务器测试机器,那具体恒创科技美国云服务器性能到底怎么样呢?主机参考进行了一番VPS测评,大家可以参考一下,总体来说还是非常不错的,是值得购买的。非常适用于稳定建站业务需求。恒创科技服务器怎么样?恒创科技服务器好不好?henghost怎么样?henghost值不值得购买?SonderCloud服务器好不好?恒创科技henghost值不值得购买?恒创科技是...

causesvalidation为你推荐
软银亏损65亿美元摩根大通巨亏20亿美元是什么原因造成的?租车平台哪个好租车哪个平台最好?要稳定的手机浏览器哪个好手机什么浏览器最好用?轿车和suv哪个好SUV和轿车哪个好点?纠结压缩软件哪个好现在哪个压缩软件最稳定又快 ?绝地求生加速器哪个好绝地求生用什么加速器比较好?二手车网站哪个好想买个二手车,去哪买比较好美国国际东西方大学出国留学,美国“野鸡大学”有哪些?51空间登录以前的51空间怎么进?牡丹江教育云空间登录云端学习如何登录?
域名邮箱 网游服务器租用 dns是什么 inmotionhosting 精品网 表格样式 网站监控 realvnc 京东云擎 ev证书 免费申请网站 爱奇艺vip免费领取 购买国外空间 超级服务器 跟踪路由命令 网通服务器 阿里云免费邮箱 湖南idc 浙江服务器 web服务器有哪些 更多