Controle de saisie d'un text box [Résolu]

Signaler
Messages postés
17
Date d'inscription
mardi 10 avril 2007
Statut
Membre
Dernière intervention
25 mai 2010
-
 Lauriano -
Bonjour, je veux faire un controle de saisie dans un textBox, en numérique et en chaine de caractére,
j'explique, dans un textbox Numéro produit par exemple l'utilisateur ne peux saisir que des numéros pas de caractéres, et dans un textbox Nom Produit l'utilisateur ne pourras écrire que des caractéres et pas des numéros, càd s'il écris un numéros, un message apparait Vous devez saisir que des chaines de caractéres par exemple.merci d'avance

14 réponses

Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
13
Il suffit de contrôler ce que l'utilisateur tape. Pour cela le TextBox possède un évènement KeyPress.
Pour les chiffres
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    if (!char.IsDigit(e.KeyChar))
        e.Handled = true;
}

Pour les lettres
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    if (!char.IsLetter(e.KeyChar))
        e.Handled = true;
}

il y a un bout de temps j'avais fait un textbox pour gérer les valeurs numériques
http://www.csharpfr.com/codes/TEXTBOX-MONETAIRE_41205.aspx
ça marche à merveille . Merci
mais la touche pour effacer le text ne travaille pas
Messages postés
14855
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
11 octobre 2020
444 > Kimo
Bonjour
c'est normal, backspace, suppr, les flèches etc ne sont pas des caractères, ils ne sont donc pas intercepté par KeyPress.

Si tu veux faire un champ numérique (puisque c'est le sujet de la discussion), il y a cette méthode
https://msdn.microsoft.com/fr-fr/library/ms229644(v=vs.90).aspx?cs-save-lang=1&cs-lang=csharp#code-snippet-1

Si tu veux faire quelque chose de plus personnalisé, tu as cette méthode
http://codes-sources.commentcamarche.net/forum/affich-1526742-keydown-keypress#5

(lire la discussion dans l'ordre chronologique)
Merci beaucoup c'est très aidant
Messages postés
15
Date d'inscription
lundi 11 avril 2011
Statut
Membre
Dernière intervention
1 mars 2013
2
bonjour;
j ai essai ce code pour qu' un textbox n accepte que des caractéres et ca marche a merveille
MAIS ce textbox n accepte plus la touche supprimer lorsque j ai une faute de frappe et je voudrai l effacer
je vous pris de me repondre
merciiiiiiiiiii
Messages postés
17
Date d'inscription
mardi 10 avril 2007
Statut
Membre
Dernière intervention
25 mai 2010

bonjour, merci d'avoir répondu, c'est gentil :)
je viens de tester le code que vous m'avez envoyer mais ca ne marche pas, meme si j'ai ajouté une référence Using System.Windows.Forms(); mais ca ne marche pas, pouvez vous m'aider à la régler svp? je suis en train de developper une application web en c#, j'utilise Visual Studio 2008,
j'ai vu le lien que vous m'avez envoyer aussi, mais ca ne marche pas apparement parce que j'utilise une version plus récente que la votre, que puis-je faire pour la régler? merci d'avance GG29 et bonne journée :)
Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
13
Déjà tu viens d'ajouter une précision : Application web. Mon code marche pour des applications Windows Forms.
En asp il n'y a pas d'évènement KeyPress. On utilise donc l'event TextChanged.

protected void TextBox1_TextChanged(object sender, EventArgs e)
{
StringBuilder sb = new StringBuilder();

foreach (char c in TextBox1.Text)
{
if (Char.IsDigit(c))
sb.Append(c);
}

TextBox1.Text = sb.ToString();
}
Messages postés
17
Date d'inscription
mardi 10 avril 2007
Statut
Membre
Dernière intervention
25 mai 2010

resalut, merci encore une fois d'avoir répondu, oui c'est une application web, je viens d'ajouter le code mais en vain, il acceptes les lettres et les chiffres, que puis je faire? exusez moi pour le dérengement, mais j'ai vraiment besoin de se controle, peux pas le laisser tomber.
Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
13
Tu as mis la propriété AutoPostBack à true ?
Messages postés
17
Date d'inscription
mardi 10 avril 2007
Statut
Membre
Dernière intervention
25 mai 2010

pouvez vous m'envoyer un bouquin ou un document qui m'aides à maitriser le c#.net, parce que j'ai déja commencé à apprendre le c# mais parfois il ya des trucs qui ne marchent pas, puisqu'il ya une différence entre le code d'une application web et une application Windows Forms.
Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
13
Asp


C#
protected void TextBox1_TextChanged(object sender, EventArgs e) 
{ 
StringBuilder sb = new StringBuilder(); 

foreach (char c in TextBox1.Text) 
{ 
if (Char.IsDigit(c)) 
sb.Append(c); 
} 

TextBox1.Text = sb.ToString(); 
}
Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
13
Messages postés
17
Date d'inscription
mardi 10 avril 2007
Statut
Membre
Dernière intervention
25 mai 2010

merci ca marché enfin :) c'est trés gentil :)
bonne journée
Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
13
N'oublie pas de mettre Résolu
Messages postés
17
Date d'inscription
mardi 10 avril 2007
Statut
Membre
Dernière intervention
25 mai 2010

Résolu
Messages postés
2238
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
9 octobre 2020
114
Bonjour maroueniag

Si cs_GG29 te demande de mettre "Résolu" ce n'est pas de faire une message avec ce mot mais de résoudre ce post avec le bouton adéquat
( voir tout en haut au début de ton post)

Merci

Zut ! Pas vu que cela date !!!!!
Messages postés
9
Date d'inscription
mercredi 9 décembre 2009
Statut
Membre
Dernière intervention
23 avril 2010

Bonjour,
J'ais un petit souci avec une application.Je suis débutant et je voudrais activer une interface form2 à partir d'un bouton de l'interface form1, mais aussi quitter l'application à partir d'un autre bouton
Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
13