CompareValidator.EvaluateIsValid Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Wanneer deze methode wordt overschreven in een afgeleide klasse, bevat deze methode de code om te bepalen of de waarde in het invoerbeheer geldig is.
protected:
override bool EvaluateIsValid();
protected override bool EvaluateIsValid();
override this.EvaluateIsValid : unit -> bool
Protected Overrides Function EvaluateIsValid () As Boolean
Retouren
true als de waarde in het invoerbeheer geldig is; anders, false.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u de EvaluateIsValid methode in een aangepast serverbesturingselement overschrijft, zodat deze altijd wordt geretourneerd true als de waarden van de twee opgegeven besturingselementen hetzelfde zijn en false anders.
Important
Dit voorbeeld heeft een tekstvak dat gebruikersinvoer accepteert. Dit is een mogelijke beveiligingsrisico. Standaard valideren ASP.NET webpagina's dat gebruikersinvoer geen script- of HTML-elementen bevat. Zie Overzicht van Script Exploits voor meer informatie.
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet" Assembly="Samples.AspNet.CS" %>
<%@ Page language="c#" %>
<!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 CompareValidator - EvaluateIsValid - C# Example</title>
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
// Run the Page Validate method in order to force
// the CompareValidate to show it's error message.
Page.Validate();
}
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CompareValidator - EvaluateIsValid - C# Example</h3>
<asp:TextBox id="TextBox1" runat="server">123</asp:TextBox><br />
<asp:TextBox id="TextBox2" runat="server">123</asp:TextBox>
<aspSample:CustomCompareValidatorEvaluateIsValid
id="CompareValidator1"
runat="server"
ErrorMessage="Value in TextBox2 does not match value in TextBox1."
Display="Dynamic"
ControlToCompare="TextBox2"
ControlToValidate="TextBox1" /><br />
<asp:Button id="Button1" runat="server" Text="Button" />
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page language="VB" %>
<!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 CompareValidator - EvaluateIsValid - VB.NET Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CompareValidator - EvaluateIsValid - C# Example</h3>
<asp:TextBox id="TextBox1" runat="server">123</asp:TextBox><br />
<asp:TextBox id="TextBox2" runat="server">123</asp:TextBox>
<aspSample:CustomCompareValidatorEvaluateIsValid
id="CompareValidator1" runat="server"
ErrorMessage="Value in TextBox2 does not match value in TextBox1."
Display="Dynamic" ControlToCompare="TextBox2" ControlToValidate="TextBox1" /><br />
<asp:Button id="Button1" runat="server" Text="Button" />
</form>
</body>
</html>
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet
{
[AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomCompareValidatorEvaluateIsValid : System.Web.UI.WebControls.CompareValidator
{
protected override bool EvaluateIsValid()
{
// Get the values from the two controls
string controlToValidateValue = this.GetControlValidationValue(this.ControlToValidate);
string controlToCompareValue = this.GetControlValidationValue(this.ControlToCompare);
// If the values are the same, return true, else return false.
if (System.String.Compare(controlToValidateValue, 0, controlToCompareValue, 0, controlToCompareValue.Length, false, System.Globalization.CultureInfo.InvariantCulture) == 0)
{
return true;
}
else
{
return false;
}
}
}
}
Imports System.Web
Imports System.Security.Permissions
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomCompareValidatorEvaluateIsValid
Inherits System.Web.UI.WebControls.CompareValidator
Protected Overrides Function EvaluateIsValid() As Boolean
' Get the values from the two controls
Dim controlToValidateValue As String = Me.GetControlValidationValue(Me.ControlToValidate)
Dim controlToCompareValue As String = Me.GetControlValidationValue(Me.ControlToCompare)
' If the values are the same, return true, else return false.
If (System.String.Compare(controlToValidateValue, 0, controlToCompareValue, 0, controlToCompareValue.Length, False, System.Globalization.CultureInfo.InvariantCulture) = 0) Then
Return True
Else
Return False
End If
End Function
End Class
End Namespace