CustomValidator.EvaluateIsValid Method ()


This API supports the product infrastructure and is not intended to be used directly from your code.

Overrides the BaseValidator.EvaluateIsValid method.

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

protected override bool EvaluateIsValid()

Return Value

Type: System.Boolean

true if the value in the input control is valid; otherwise, false.

The following code example demonstrates how to override the EvaluateIsValid method in a custom server control.

System_CAPS_security Security Note

This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see Script Exploits Overview.

<%@ 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"
<html xmlns="" >
    <title>Custom CustomValidator - EvaluateIsValid - C# Example</title>
  <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" />&nbsp;

      ErrorMessage="Not an even number!" /><br /><br />

    <asp:Button id="Button1" runat="server" Text="Validate" />

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)))
                int i = int.Parse(controlValue);
                isValid = ((i%2) == 0);
            return isValid;   

.NET Framework
Available since 1.1
Return to top