RequiredFieldValidator.EvaluateIsValid 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
当 ASP.NET 处理 Web 窗体时在验证阶段调用。
protected:
override bool EvaluateIsValid();
protected override bool EvaluateIsValid ();
override this.EvaluateIsValid : unit -> bool
Protected Overrides Function EvaluateIsValid () As Boolean
返回
如果输入控件中的值有效,则为 true
;否则为 false
。
示例
下面的代码示例演示如何重写EvaluateIsValid自定义服务器控件中的方法,以便在值为 null 或空时始终返回false
RequiredFieldValidator该方法,并且始终返回true
其他方法。
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS" %>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom RequiredFieldValidator - EvaluateIsValid - C# Example</title>
<script runat="server">
void Button1_Click(Object sender, EventArgs e)
{
if (Page.IsValid)
{
Label1.Text = "Required field is filled!";
}
else
{
Label1.Text = "Required field is empty!";
}
}
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom RequiredFieldValidator - EvaluateIsValid - C# Example</h3>
<table border="0" cellpadding="4" cellspacing="0">
<tr valign="top">
<td colspan="3">
<asp:Label ID="Label1" runat="server" Text="Fill in the required field below" />
</td>
</tr>
<tr>
<td align="right">Card Number:</td>
<td>
<asp:TextBox id="TextBox1" runat="server" />
</td>
<td>
<aspSample:CustomRequiredFieldValidatorEvaluateIsValid
id="RequiredFieldValidator1"
runat="server"
ControlToValidate="TextBox1"
Display="Static"
ErrorMessage="*" />
</td>
</tr>
<tr>
<td> </td>
<td>
<asp:Button
id="Button1"
runat="server"
Text="Validate"
OnClick="Button1_Click" />
</td>
<td> </td>
</tr>
</table>
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom RequiredFieldValidator - EvaluateIsValid - VB.NET Example</title>
<script runat="server">
Sub Button1_Click(sender As Object, e As EventArgs)
If Page.IsValid Then
Label1.Text = "Required field is filled!"
Else
Label1.Text = "Required field is empty!"
End If
End Sub
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom RequiredFieldValidator - EvaluateIsValid - VB.NET Example</h3>
<table border="0" cellpadding="4" cellspacing="0">
<tr valign="top">
<td colspan="3">
<asp:Label ID="Label1" runat="server"
Text="Fill in the required field below" />
</td>
</tr>
<tr>
<td align="right">Card Number:</td>
<td>
<asp:TextBox id="TextBox1" runat="server" />
</td>
<td>
<aspSample:CustomRequiredFieldValidatorEvaluateIsValid id="RequiredFieldValidator1"
runat="server" ControlToValidate="TextBox1" Display="Static" ErrorMessage="*" />
</td>
</tr>
<tr>
<td> </td>
<td>
<asp:Button id="Button1" runat="server" Text="Validate"
OnClick="Button1_Click" />
</td>
<td> </td>
</tr>
</table>
</form>
</body>
</html>
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet.CS.Controls
{
[AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomRequiredFieldValidatorEvaluateIsValid : System.Web.UI.WebControls.RequiredFieldValidator
{
protected override bool EvaluateIsValid()
{
// Get the ControlToValidate's value.
string controlValue = GetControlValidationValue(ControlToValidate);
// If ControlToValidate's value is null or empty, then return false.
if ((controlValue == null) || (controlValue.Trim().Equals(System.String.Empty)))
{
return false;
}
// Else the control contains a value so return true.
else
{
return true;
}
}
}
}
Imports System.Web
Imports System.Security.Permissions
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomRequiredFieldValidatorEvaluateIsValid
Inherits System.Web.UI.WebControls.RequiredFieldValidator
Protected Overrides Function EvaluateIsValid() As Boolean
' Get the ControlToValidate's value.
Dim controlValue As String = GetControlValidationValue(ControlToValidate)
' If ControlToValidate's value is null or empty, then return false.
If controlValue Is Nothing OrElse controlValue.Trim().Equals(System.String.Empty) Then
Return False
Else ' Else the control contains a value so return true.
Return True
End If
End Function
End Class
End Namespace