Bonjour,

J'utilise 2 CustomValidator dans un composant ASCX qui sont executés côté serveur.
Je me suis abonné à l'évènement OnServerValidate sur chacun des CustomValidator.
Jusqu'à là aucun souci particulier.

Lorsque je clique sur le bouton (CauseValidation = "true") j'arrive bien dans les 2 évènements.
Sur chacun d'eux je mets la valeur IsValid de l'objet ServerValidateEventArgs à false.

En dur, pour être sûr.
Seul problème, une fois sortie des 2 évènements, le code associé au click du bouton est tout de même exécuté.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
<asp:CustomValidator id="CibleValidator" ErrorMessage="Vous devez sélectionner un répertoire cible." runat="server" CSSCLASS="gras" OnServerValidate="CibleValidator_ServerValidate" DISPLAY="Dynamic" EnableClientScript="false" Enabled="true">(*)</asp:CustomValidator>
<asp:CustomValidator ID="FichiersValidator" ErrorMessage="Vous devez ajouter au moins un fichier à distribuer" runat="server" OnServerValidate="FichiersValidator_ServerValidate" Display="Dynamic" EnableClientScript="false" Enabled="true">(*)</asp:CustomValidator>
<asp:button id="Distribuer" Runat="server" CssClass="submit" Text="Distribuer" CausesValidation="true"></asp:button>

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
protected void FichiersValidator_ServerValidate(object source, ServerValidateEventArgs args)
{
    args.IsValid = false;
}
 
protected void CibleValidator_ServerValidate(object source, ServerValidateEventArgs args)
{
    args.IsValid = false;
}
Ais-je loupé un épisode ?