CustomValidator.EvaluateIsValid Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Setzt die EvaluateIsValid()-Methode außer Kraft.
protected:
override bool EvaluateIsValid();
protected override bool EvaluateIsValid ();
override this.EvaluateIsValid : unit -> bool
Protected Overrides Function EvaluateIsValid () As Boolean
Gibt zurück
true
, wenn der Wert im Eingabesteuerelement gültig ist, andernfalls false
.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie die EvaluateIsValid -Methode in einem benutzerdefinierten Serversteuerelement überschrieben wird.
Wichtig
Dieses Beispiel umfasst ein Textfeld, das Benutzereingaben akzeptiert, die ein potenzielles Sicherheitsrisiko darstellen. Standardmäßig stellen ASP.NET-Webseiten sicher, dass Benutzereingaben keine Skript- oder HTML-Elemente enthalten. Weitere Informationen finden Sie unter Übersicht über Skriptangriffe.
<%@ 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 CustomValidator - EvaluateIsValid - C# Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CustomValidator - EvaluateIsValid - C# Example</h3>
<asp:Label id="Label1" runat="server" Text="Enter an even number:"
AssociatedControlID="TextBox1" /><br />
<asp:TextBox id="TextBox1" runat="server" />
<aspSample:CustomCustomValidatorEvaluateIsValid
id="Customvalidator1"
runat="server"
ControlToValidate="TextBox1"
Display="Static"
ErrorMessage="Not an even number!" /><br /><br />
<asp:Button id="Button1" runat="server" Text="Validate" />
</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 CustomValidator - EvaluateIsValid - VB.NET Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CustomValidator - EvaluateIsValid - VB.NET Example</h3>
<asp:Label id="Label1" runat="server" Text="Enter an even number:"
AssociatedControlID="TextBox1" /><br />
<asp:TextBox id="TextBox1" runat="server" />
<aspSample:CustomCustomValidatorEvaluateIsValid id="Customvalidator1" runat="server" ControlToValidate="TextBox1" Display="Static" ErrorMessage="Not an even number!" /><br /><br />
<asp:Button id="Button1" runat="server" Text="Validate" />
</form>
</body>
</html>
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet.CS.Controls
{
[AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomCustomValidatorEvaluateIsValid : System.Web.UI.WebControls.CustomValidator
{
protected override bool EvaluateIsValid()
{
bool isValid = false;
// Get the name of the control to validate.
string controlToValidate = this.ControlToValidate;
if (controlToValidate.Length > 0)
{
// Get the control's value.
string controlValue = GetControlValidationValue(controlToValidate);
// If the value is not null and not empty, test whether
// check if the value entered into the text box is even,
// if so return true, else return false in all other cases.
if ((controlValue != null) && (!controlValue.Trim().Equals(System.String.Empty)))
{
try
{
int i = int.Parse(controlValue);
isValid = ((i%2) == 0);
}
catch
{}
}
}
return isValid;
}
}
}
Imports System.Web
Imports System.Security.Permissions
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomCustomValidatorEvaluateIsValid
Inherits System.Web.UI.WebControls.CustomValidator
Protected Overrides Function EvaluateIsValid() As Boolean
Dim isValid As Boolean = False
' Get the name of the control to validate.
Dim controlToValidate As String = Me.ControlToValidate
If controlToValidate.Length > 0 Then
' Get the control's value.
Dim controlValue As String = GetControlValidationValue(controlToValidate)
' If the value is not null and not empty, test whether
' check if the value entered into the text box is even,
' if so return true, else return false in all other cases.
If Not (controlValue Is Nothing) AndAlso _
Not controlValue.Trim().Equals(System.String.Empty) Then
Try
Dim i As Integer = Integer.Parse(controlValue)
isValid = ((i Mod 2) = 0)
Catch
End Try
End If
End If
Return isValid
End Function
End Class
End Namespace