none
Maîtrise des contrôle de validation RRS feed

  • Question

  • Bonjour,

    Config : VS2010, Framework 4, langage ; C#

    Mon site quasiment terminé, je souhaite rajouter maintenant des controle de validation pour les zones de saisie. Ces zones sont en fait des TextBox ou des DropDownList situés dans un FooterTemplate d'un gridview.

    En mode insertion dans mon gridview (en utilisant le footer) j'au un bouton OK pour insérer mon nouvel enregistrement, et un bouton Annuler qui rend invisible mon footer.

    Mon problème est que lorsque je rajoute mes contrôle de validation, ils sont opérationnels même sur le bouton annuler et je ne vois pas comment leur "dire" de surveiller que sur un Click sur le bouton Ajouter ?? D'ailleurs, lors du click sur "Ajouter" et lorsqu'ils m'informent de la non validation, je ne peux de ce fait pas annuler mon ajout.

    Auriez vous une solution à ce problème ?

     

    Puis, un autre soucis que j'anticipe : en fait sur ma page ou se situe le GridView, en fait, il y a plusieurs GridView (1 par table de ma BDD). Du coup je me demande comment les ValidationSumary de chaque Gridview vont surveiller uniquemeny le gridview concerné. Eneffet, je compte mettre un ValidationSumary à chaque GridView.

     

    Merci de votre aide...


    UOLAD
    dimanche 27 novembre 2011 17:22

Réponses

  • Bon, ben j'ai trouvé une solution qui fonctionne (est ce la meilleure.... ? Si des pro passent par là, je veux bien leur avis)

    Partage de ma solution : 

    Pour éviter le contrôle de la saisie sur un click du bouton annuler : CauseValidation à false. Du coup, lorsqu'on clique sur ce bouton et qu'auparavant le message ValidationSummary était apparut du à une mauvaise saisie, le postback enlève le ValidationSummary.

    Pour des validations ciblée, j'utilise la propriété ValidationGroup.

     

    Par contre, petit soucis :

    Je met un RequiredFielValidator sur le TExtBox dans EditItemTemplate et FooterTemplate pour surveiller en Insertion et en Edition. A la fin du Gridview g mon ValidationSummary. Le tout qui pointe sur le même ValidationGroup.

    Le ValidationSummary s'affiche bien sur l'insertion, mais pas sur l'édition. JE peux, sur l'évènement linqdatasourse.update, intercepter une page pas valide et annuler l'insertion, mais c moche. Dommage.

    Une idée du problème ?


    UOLAD
    • Marqué comme réponse UoLAD dimanche 27 novembre 2011 21:47
    • Non marqué comme réponse UoLAD lundi 28 novembre 2011 18:20
    • Modifié UoLAD lundi 28 novembre 2011 18:25
    • Marqué comme réponse UoLAD lundi 28 novembre 2011 18:53
    dimanche 27 novembre 2011 21:47
  • A y est tout est bon maintenant,

    Par défaut, le bouton update mis automatiquement dans le CommandField des GridView a la propriété causevalidation à false...


    UOLAD
    lundi 28 novembre 2011 18:53

Toutes les réponses

  • Bon, ben j'ai trouvé une solution qui fonctionne (est ce la meilleure.... ? Si des pro passent par là, je veux bien leur avis)

    Partage de ma solution : 

    Pour éviter le contrôle de la saisie sur un click du bouton annuler : CauseValidation à false. Du coup, lorsqu'on clique sur ce bouton et qu'auparavant le message ValidationSummary était apparut du à une mauvaise saisie, le postback enlève le ValidationSummary.

    Pour des validations ciblée, j'utilise la propriété ValidationGroup.

     

    Par contre, petit soucis :

    Je met un RequiredFielValidator sur le TExtBox dans EditItemTemplate et FooterTemplate pour surveiller en Insertion et en Edition. A la fin du Gridview g mon ValidationSummary. Le tout qui pointe sur le même ValidationGroup.

    Le ValidationSummary s'affiche bien sur l'insertion, mais pas sur l'édition. JE peux, sur l'évènement linqdatasourse.update, intercepter une page pas valide et annuler l'insertion, mais c moche. Dommage.

    Une idée du problème ?


    UOLAD
    • Marqué comme réponse UoLAD dimanche 27 novembre 2011 21:47
    • Non marqué comme réponse UoLAD lundi 28 novembre 2011 18:20
    • Modifié UoLAD lundi 28 novembre 2011 18:25
    • Marqué comme réponse UoLAD lundi 28 novembre 2011 18:53
    dimanche 27 novembre 2011 21:47
  • A y est tout est bon maintenant,

    Par défaut, le bouton update mis automatiquement dans le CommandField des GridView a la propriété causevalidation à false...


    UOLAD
    lundi 28 novembre 2011 18:53
  • Bonjour,

    Merci d'avoir partagé votre solution avec le communauté. Pour l'autre question veuillez ouvrir un nouveau thread.

    Cordialement,


    aelassas.free.fr
    mardi 29 novembre 2011 23:22