Freigeben über


CustomValidator.EvaluateIsValid-Methode

Diese Methode unterstützt die .NET Framework-Infrastruktur und ist nicht für die direkte Verwendung in Code bestimmt.

Überschreibt die BaseValidator.EvaluateIsValid-Methode.

Namespace: System.Web.UI.WebControls
Assembly: System.Web (in system.web.dll)

Syntax

'Declaration
Protected Overrides Function EvaluateIsValid As Boolean
'Usage
Dim returnValue As Boolean

returnValue = Me.EvaluateIsValid
protected override bool EvaluateIsValid ()
protected:
virtual bool EvaluateIsValid () override
protected boolean EvaluateIsValid ()
protected override function EvaluateIsValid () : boolean

Rückgabewert

true, wenn der Wert im Eingabesteuerelement gültig ist, andernfalls false.

Beispiel

Im folgenden Codebeispiel wird veranschaulicht, wie die EvaluateIsValid-Methode in einem benutzerdefinierten Serversteuerelement überschrieben wird.

<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page Language="VB" AutoEventWireup="True" %>
<HTML>
  <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:" /><BR>
    <asp:TextBox id="TextBox1" runat="server" />&nbsp;
    <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>

...
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
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS" %>
<%@ Page Language="C#" AutoEventWireup="True" %>
<HTML>
  <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:" /><BR>

    <asp:TextBox id="TextBox1" runat="server" />&nbsp;

    <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;   
        }
    }
}
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.JSL.Controls" Assembly="Samples.AspNet.JSL" %>
<%@ Page Language="VJ#" AutoEventWireup="True" %>
<HTML>
  <HEAD>
    <title>Custom CustomValidator - EvaluateIsValid - VJ# Example</title>
  </HEAD>
<body>
  <form id="Form1" method="post" runat="server">
    <h3>Custom CustomValidator - EvaluateIsValid - VJ# Example</h3>

    <asp:Label id="Label1" runat="server" Text="Enter an even number:" /><BR>

    <asp:TextBox id="TextBox1" runat="server" />&nbsp;

    <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>

...
package Samples.AspNet.JSL.Controls;

public class CustomCustomValidatorEvaluateIsValid
    extends System.Web.UI.WebControls.CustomValidator
{
    protected boolean EvaluateIsValid()
    {
        boolean isValid = false;
        // Get the name of the control to validate.
        String controlToValidate = this.get_ControlToValidate();

        if (controlToValidate.get_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(""))) {
                try {
                    int i = System.Int32.Parse(controlValue);
                    isValid = i % 2 == 0;
                }
                catch (System.Exception exp) {
                }
            }
        }
        return isValid;
    } //EvaluateIsValid
} //CustomCustomValidatorEvaluateIsValid

Plattformen

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

CustomValidator-Klasse
CustomValidator-Member
System.Web.UI.WebControls-Namespace