Forcer une textBox a n'accepter que des chiffres [Résolu]

Messages postés
18
Date d'inscription
mardi 17 juin 2003
Dernière intervention
21 juillet 2003
- - Dernière réponse : Whismeril
Messages postés
12359
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
9 décembre 2018
- 31 mars 2018 à 13:43
Bonjour a tous
quelqu'un sait-il comment forcer une textBox a n'accepter que des chiffres pour un projet pour PPC en C#?
merci d'avance de vos reponses

G.S.
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
382
Date d'inscription
samedi 22 janvier 2005
Dernière intervention
13 août 2011
5
Merci
void TextBox_KeyPress(object sender ,KeyPressEventArgs e)
{
     if (Char.IsControl(e.KeyChar) || !Char.IsNumber(e.KeyChar))
     {
          e.Handled = true; // Set l'evenement comme etant completement fini
          return;
     }
}

Merci yohan49 5

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CodeS-SourceS

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de yohan49
Messages postés
51
Date d'inscription
mercredi 26 février 2003
Dernière intervention
27 octobre 2004
0
Merci
Sault, c'est pareil que pour une application windows:
http://www.csharpfr.com/forum.aspx?Article=930
Commenter la réponse de Zil0k
Messages postés
31
Date d'inscription
vendredi 22 août 2003
Dernière intervention
15 mars 2015
0
Merci
Salut, il suffit de programmer ton keypress et mettre l'hander en true ou en false selon le caractère ascii
Commenter la réponse de chental
Messages postés
3489
Date d'inscription
lundi 16 octobre 2000
Dernière intervention
30 octobre 2008
0
Merci
Bonjour,
Tu peux aussi utiliser le control NumericUpDown.
Ou alors http://www.csharpfr.com/code.aspx?ID=31894

Mx
MVP C#
Commenter la réponse de MorpionMx
Messages postés
5
Date d'inscription
dimanche 10 décembre 2000
Dernière intervention
1 avril 2010
0
Merci
Tu peux utiliser ISNUMERIC,ça va marcher INCHA ALLAH
Commenter la réponse de oussamamatrane
Messages postés
53
Date d'inscription
jeudi 14 février 2013
Dernière intervention
16 juillet 2014
0
Merci
Bonjour,

Ce que tu peux faire pour obliger les gens à ne mettre que des chiffres et de voir si tu peux convertir ce qui est insérer en entier si la conversion ne fonctionne pas dans ce cas ce ne sont pas des chiffres.
Whismeril
Messages postés
12359
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
9 décembre 2018
-
Ca n'est pas une bonne méthode, si tu utilises Convert.ToInt32() ou int.Parse(), une valeur non mumérique va retourner une erreur et donc faire perdre du temps à ton programme.
Un programme basé sur la recherche d'erreurs n'est pas bien codé.

On peur faire int.TryParse, c'est déjà mieux, mais la méthode décrite par Yohan49 est plus efficace, car tu peux gérér la décimale et le signe - comme tu le souhaites.
Commenter la réponse de Adrien2p
Messages postés
107
Date d'inscription
samedi 28 juillet 2012
Dernière intervention
11 mars 2018
0
Merci
tu peut faire

 void chiffre(System.Windows.Forms.KeyPressEventArgs e)
        {
            if (!char.IsDigit(e.KeyChar))
                e.Handled = true;
        }


puis tu appel
private void textBox_KeyPress(object sender, KeyPressEventArgs e)
        {
            chiffre(e);
        } 


Posez la condition comme suite if (!char.IsDigit(e.KeyChar) && !char.IsControl(e.KeyChar)) si non le back space ne va pas fonctionner
Whismeril
Messages postés
12359
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
9 décembre 2018
> Fab -
Oui c'est exactement ce qui a été dit en 2010 par yohan49....
Commenter la réponse de remiki90

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.