AGuyCalledGerald
AGuyCalledGerald

Reputation: 8150

ASP.NET Custom Validator Error Message: Control referenced by the property cannot be validated

I use ASP.NET and have a Button and a CustomValidator, which has to validate the button.

<asp:Button ID="saveButton" runat="server" OnClick="SaveButton_Click" Text="Speichern"
    CausesValidation="true"/>
<asp:CustomValidator runat="server" ID="saveCValidator" Display="Static"
    OnServerValidate="EditPriceCValidator_ServerValidate"   
    ControlToValidate="saveButton" ErrorMessage="">

When loading the page, I receive the error message:

"Control 'saveButton' referenced by the ControlToValidate property of 'saveCValidator' cannot be validated."

What might be the problem? I searched on the net, but this didn´t help much.

Upvotes: 17

Views: 32829

Answers (2)

Oleks
Oleks

Reputation: 32323

AFAIK, ControlToValidate property should point to input control or left blank for the CustomValidator control.

A reference from MSDN:

Use the ControlToValidate property to specify the input control to validate. This property must be set to the ID of an input control for all validation controls except the CustomValidator control, which can be left blank. If you do not specify a valid input control, an exception will be thrown when the page is rendered. The ID must refer to a control within the same container as the validation control. It must be in the same page or user control, or it must be in the same template of a templated control.

The standard controls that can be validated are:

  • System.Web.UI.WebControls.DropDownList
  • System.Web.UI.WebControls.FileUpload
  • System.Web.UI.WebControls.ListBox
  • System.Web.UI.WebControls.RadioButtonList
  • System.Web.UI.WebControls.TextBox
  • System.Web.UI.HtmlControls.HtmlInputFile
  • System.Web.UI.HtmlControls.HtmlInputPassword
  • System.Web.UI.HtmlControls.HtmlInputText
  • System.Web.UI.HtmlControls.HtmlSelect
  • System.Web.UI.HtmlControls.HtmlTextArea

Upvotes: 29

CAbbott
CAbbott

Reputation: 8098

You can only use a CustomValidator against Input controls that accept user input:

Client-side validation enhances the validation process by checking user input before it is sent to the server.

What you want to do is look here at Button Controls and Validation.

Upvotes: 17

Related Questions