2010-10-05 4 views
4

Comment peut-on utiliser le champ validateur requis sur le contrôle de l'utilisateur dans la page ASPX * fort texte *Comment peut-on utiliser le champ validateur requis sur le contrôle de l'utilisateur dans la page ASPX

J'ai un contrôle utilisateur qui ont une liste déroulante. J'utilise ce contrôle sur ma page. Je veux utiliser valideur de champ requis sur cette liste déroulante.

Veuillez me répondre. Comment puis-je utiliser?

+0

Vous voulez ceci à postback ou sur le client? –

+0

asp n'est pas asp.net. retag s'il vous plaît – JumpingJezza

Répondre

7

C'est de ma propre réponse here.

Pour permettre la validation d'un contrôle utilisateur personnalisé, la première chose à ajouter est l'ajout de <ValidationPropertyAttribute("value")>. Ceci spécifie la propriété qui fournit la chaîne à valider, où "valeur" est le nom de la propriété.

Deuxièmement, la propriété ControlToValidate="" du contrôle de validation sur la page doit être l'ID du contrôle utilisateur, deux points (:), puis l'ID du contrôle auquel la valeur est associée.

Par exemple, j'avais un contrôle nommé cboTask qui avait <ValidationPropertyAttribute("value")> défini en son sein où la valeur était une propriété qui renvoyait la valeur actuelle d'un DropDownList (DropDownList1) qui était contenue dans cboTask. Afin de valider que l'utilisateur a sélectionné une option j'ai utilisé le RequiredFieldValidator avec le ControlToValidate="cboTask:DropDownList1".

<ValidationPropertyAttribute("value")> _ 
Partial Public Class ctlDropDownList 
    Inherits System.Web.UI.UserControl 


    Public Property value() As String 
     Get 
      Return DropDownList1.SelectedValue.Trim() 
     End Get 
     Set(ByVal value As String) 
      Dim llistitem As ListItem 
      DropDownList1.ClearSelection() 
      For Each llistitem In DropDownList1.Items 
       If RTrim(llistitem.Value) = RTrim(value) Then 
        llistitem.Selected = True 
        Exit For 
       End If 
      Next 
     End Set 
    End Property 

End Class 

et

<asp:RequiredFieldValidator ID="rfvTask" 
     runat="server" 
     ErrorMessage="Task cannot be blank" 
     InitialValue="" 
     ControlToValidate="cboTask:DropDownList1" 
     ValidationGroup="page">*</asp:RequiredFieldValidator> 
+0

Cela fonctionnera.Merci – Himanshu

Questions connexes