Signaler une erreur de saisie

Signaler
Messages postés
1
Date d'inscription
jeudi 19 octobre 2006
Statut
Membre
Dernière intervention
27 octobre 2006
-
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
-
J'ai fai un programme qui contient un txtBox dans lequel il faut saisir que des chiffres. j'aimerais que si une personne saisi des lettres, un message d'erreur aparait de la forme MessageBox lui signalant qu'il a fait une erreur de saisie. En meme temps je débute donc merci d'en tenir compte.


j'ai une variable de type int par ex
comment faire

3 réponses

Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
54
Salut,

Inscris toi a l'evenement Validating de ton Textbox. (celui ci se déclenche quand le TextBox perd le focus).
Dans la méthode associée a l'evenement, met ce code :

<hr />

Regex r =
new
Regex(
@"^\d+$");
//1 chiffre ou plus
if (!r.IsMatch(
this.textBox1.Text))
// Si la valeur ne correspond pas au pattern
{

   MessageBox.Show(
"La valeur doit etre numérique");
// On affiche une alerte
   e.Cancel =
true;
// On laisse le focus a la textbox
}
<hr />

Mx
MVP C# 
Messages postés
794
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
19 août 2008
10
Regarde aussi du côté du control "ErrorProvider", ça pourras peut être t'aider (un petit composant qui va afficher une icone a coté de ton text box, dans le cas d'une erreur de saisie, avec un tooltip décrivant l'erreur...
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
56
Une regex pour vérifier le contenu, et l'error provider pour afficher l'erreur. C'est certainement le plus "user friendly"

<hr size="2" />-Blog-