ErrorProvider

Signaler
Messages postés
73
Date d'inscription
dimanche 5 janvier 2003
Statut
Membre
Dernière intervention
20 juin 2005
-
Messages postés
73
Date d'inscription
dimanche 5 janvier 2003
Statut
Membre
Dernière intervention
20 juin 2005
-
Bonjour à tous

Je viens de faire la decouverte du composant "ErrorProvider"
C'est tres bien je valide un à un les controls de mon formulaire quand le control perd le foccus (et que l'evenement _validating est appelé)

mais comment savoir qd l'utilisateur clic sur le bouton "enregistrer les informations" que toutes les erreurs ont été corrigées ?
comment savoir que tous les controls du formulaires sont correctement rempli ? car si par hasard l'utilisateur ne selectionne pas un des textbox, le control ne perd pas le foccus donc n'appelle pas la fonction de validation.

merci d'avance

fluminis

7 réponses

Messages postés
131
Date d'inscription
jeudi 17 juin 2004
Statut
Membre
Dernière intervention
7 juillet 2005

Bonjour,

Pour ces types de vérifications j'utilise un bool pour savoir si l'utilisateur est entré dans le controle. Après il faut tester tous tes bool ce qui est vite prise de tete si tu as beaucoup de controles ...

hum.......
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
avant validation tu lance une fonction qui test toutes les valeurs de tes champs et voilou...la fonction te retourne true si tout est ok false sinon...a l'ancienne....


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
Messages postés
73
Date d'inscription
dimanche 5 janvier 2003
Statut
Membre
Dernière intervention
20 juin 2005

hum,

y a un truc qui serait this.Validate();
a appeler dans la fonction du boutton
mais qui dit ca dit aussi que les fonctions de validation mettent cancel à true ce qui est très désagréable puisque cela empeche l'utilisateur de changer de textbox tant qu'il subsiste une erreur.

donc si je le fais a l'ancienne en re verifiant les valeurs de chaque textbox, premierement je v y passer la nuit et deuxiemement ca va me faire du code en double...

bon je sens que je vais abandonner ce errorProvider pour revenir à la methode bidouille et verif seulement lors du clic sur le bouton.

qu'en pensez vous ?
Messages postés
131
Date d'inscription
jeudi 17 juin 2004
Statut
Membre
Dernière intervention
7 juillet 2005

Moi je ne vérifie pas à chaque modification de controle mais seulement au final quand ( dans mon cas ) on click sur Enregistrer. Comme le dit Arthenius je lance une fonction de vérification qui test toutes les valeurs rentrées et renvoi true ou false. Avec un message pour spécifier quelle valeur est érronnée. J'ai pas trouvé/pensé plus simple mais si t'a une idée révolutionnaire je suis preneur aussi

hum.......
Messages postés
73
Date d'inscription
dimanche 5 janvier 2003
Statut
Membre
Dernière intervention
20 juin 2005

bin en fait c'est que le composant errorProvider à l'air très puissant puisque à chaque fois qu'un textbox (ou autre) perd le foccus, l'evenement validating du control est lancé. Donc en utilisant le errorProvider à ce moment là tu peux afficher une icone a cote de ton textbox pour avertir l'utilisateur alors meme qu'il n'a pas encore appuye sur le bouton "enregistrer".
C'est très puissant mais ça à le désavantage de devoir qd meme faire une vraie verification lors de l'appui du boutton.
et si tu veux dans ton bouton faire :
if( this.Validating() )
MessageBox("tous les champs du formulaire sont valides");
else
//invalide

il faut que dans les evenements _Validating(....)
tu mettes e.Cancel à true. Ce qui est chiant pour l'utilisateur qui ne peut pas changer de textbox tant qu'il y a une erreur dans le control qui a le foccus.

si tu ne mets pas le e.Cancel à true, tu peux qd meme afficher l'icone mais apres il te faut une verification à l'ancienne. Le jeu en vaut il la chandelle ?
Messages postés
131
Date d'inscription
jeudi 17 juin 2004
Statut
Membre
Dernière intervention
7 juillet 2005

Ca m'a l'air bien compliqué tout ca.. je crois que je vais garder ma bonne vieille méthode...

hum.......
Messages postés
73
Date d'inscription
dimanche 5 janvier 2003
Statut
Membre
Dernière intervention
20 juin 2005

je crois que je vais faire comme toi :o)

les bonnes vielles methodes y a que ca de vrai ...