2010-04-14 5 views
14

Io uso ASP.NET e ho un pulsante e un CustomValidator, che deve convalidare il pulsante .Messaggio di errore del validatore personalizzato ASP.NET: il controllo a cui fa riferimento la proprietà non può essere convalidato

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

Quando il caricamento della pagina, viene visualizzato il messaggio di errore:

"Controllo 'saveButton' a cui fa riferimento la proprietà ControlToValidate di 'saveCValidator' non può essere convalidato"

Quale potrebbe essere il problema? Ho cercato in rete, ma questo non ha aiutato molto.

risposta

26

per quanto ne so, ControlToValidate proprietà dovrebbe puntare al controllo di input o lasciato vuoto per il controllo CustomValidator.

Un riferimento da MSDN:

utilizzare la proprietà ControlToValidate al specificare il controllo di input per la convalida. Questa proprietà deve essere impostata sull'ID un controllo di input per tutti i controlli di convalida eccetto il controllo , che può essere lasciato vuoto. Se non si specifica un controllo di input valido , verrà generata un'eccezione quando viene eseguito il rendering della pagina. L'ID deve fare riferimento a un controllo all'interno dello stesso contenitore come controllo di convalida. Deve essere nella stessa pagina o nel controllo utente oppure deve essere nello stesso modello di un controllo basato su modello.

I controlli standard che può essere convalidato sono:

  • 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
  • Syst em.Web.UI.HtmlControls.HtmlInputFile
  • System.Web.UI.HtmlControls.HtmlInputPassword
  • System.Web.UI.HtmlControls.HtmlInputText
  • System.Web.UI.HtmlControls.HtmlSelect
  • System.Web.UI.HtmlControls.HtmlTextArea
+1

Grazie. Questo è esattamente quello che stavo cercando. Avrei dovuto leggere la documentazione prima io stesso! :-) –

Problemi correlati