ASP.NET CompareValidator

The CompareValidator control is used to compare the value of one input control to the value of another input control or to a fixed value.

Note: If the input control is empty, the validation will succeed. Use the RequiredFieldValidator control to make the field required.


Property Description
BackColor The background color of the CompareValidator control
ControlToCompare The name of the control to compare with
ControlToValidate The id of the control to validate
Display The display behavior for the validation control. Legal values are:
  • None (the control is not displayed. Used to show the error message only in the ValidationSummary control)
  • Static (the control displays an error message if validation fails. Space is reserved on the page for the message even if the input passes validation.
  • Dynamic (the control displays an error message if validation fails. Space is not reserved on the page for the message if the input passes validation
EnableClientScript A Boolean value that specifies whether client-side validation is enabled or not
Enabled A Boolean value that specifies whether the validation control is enabled or not
ErrorMessage The text to display in the ValidationSummary control when validation fails. Note: This text will also be displayed in the validation control if the Text property is not set
ForeColor The foreground color of the control
id A unique id for the control
IsValid A Boolean value that indicates whether the control specified by ControlToValidate is determined to be valid
Operator The type of comparison to perform. The operators are:
  • Equal
  • GreaterThan
  • GreaterThanEqual
  • LessThan
  • LessThanEqual
  • NotEqual
  • DataTypeCheck
runat Specifies that the control is a server control. Must be set to "server"
Text The message to display when validation fails
Type Specifies the data type of the values to compare. The types are:
  • Currency
  • Date
  • Double
  • Integer
  • String
ValueToCompare A specified value to compare with


Declare two TextBox controls, one Button control, and one CompareValidator control in an .aspx file. If validation fails, the text "Validation Failed!" will be displayed in the CompareValidator control.

C# Code

using System;

namespace asptutorial
    public partial class blankpage : System.Web.UI.Page

        protected void Page_Load(object sender, EventArgs e)
            CompareValidator1.Text = "Password does Not Match";
            CompareValidator1.ControlToCompare = TextBox1.ClientID;
            CompareValidator1.ControlToValidate = TextBox2.ClientID;



	<form id="form1" runat="server">
		<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <br />
        <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
        <br />
        <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
        <br />
        <asp:CompareValidator ID="CompareValidator1" runat="server" 
            ErrorMessage="Password Does Not Match"></asp:CompareValidator>


Share this article on