CompareValidator.ControlPropertiesValid Method ()


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

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

Checks the properties of the control for valid values.

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

protected override bool ControlPropertiesValid()

Return Value

Type: System.Boolean

true if the control properties are valid; otherwise, false.

Exception Condition

The value of a target property cannot be converted to the expected Type.

The following code example demonstrates how to override the ControlPropertiesValid method in a custom server control so that it always returns the value of the visible property, as long as the ControlToCompare property of the CompareValidator control is on the page and contains validation properties.

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#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<html xmlns="" >
    <title>Custom CompareValidator - ControlPropertiesValid - 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.
    <form id="Form1" method="post" runat="server">
      <h3>Custom CompareValidator - ControlPropertiesValid - C# Example</h3>

      <asp:TextBox id="TextBox1" runat="server">123</asp:TextBox><br />

        ErrorMessage="The value of TextBox1 must be '456'."
        ValueToCompare="456" /><br />

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

using System.Web;
using System.Security.Permissions;

namespace Samples.AspNet.CS.Controls
    [AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
    public sealed class CustomCompareValidatorControlPropertiesValid : System.Web.UI.WebControls.CompareValidator
        protected override bool ControlPropertiesValid()
            // Determine whether the ControlToValidate is on the page and contains a validation properties. 
            base.CheckControlValidationProperty(this.ControlToValidate, "ControlToValidate");

            // If the control is visible, then control is valid and is ready for validation.
            System.Web.UI.Control control = this.FindControl(this.ControlToValidate);
            return control.Visible;

.NET Framework
Available since 1.1
Return to top