Empêcher de saisir deux fois le même caractère [Résolu]

Signaler
Messages postés
31
Date d'inscription
samedi 19 octobre 2002
Statut
Membre
Dernière intervention
10 mars 2009
-
Messages postés
31
Date d'inscription
samedi 19 octobre 2002
Statut
Membre
Dernière intervention
10 mars 2009
-
Bonsoir, j'espère que je ne me trompe pas de forum.

J'aurais voulu savoir si il existait une méthode simple pour empêcher l'utilisateur de saisir deux fois le même caractère dans un TextBox. Dans mon cas, c'est la virgule et le point. Et si possible empêcher de le saisir en première et en dernière position.

C'est pour saisir un nombre décimal.

Merci d'avance :)

Bonne soirée

2 réponses

Messages postés
327
Date d'inscription
mardi 17 février 2004
Statut
Membre
Dernière intervention
10 avril 2010
7
Salut,

Si c'est juste pour t'assurer que le nombre est correct, je pense que le plus simple c'est d'utiliser le contrôle NumericUpDown.

Sinon, si tu veux vraiment vérifier qu'il n'y a pas 2 points ou virgules dans ta textbox, tu peux utiliser l'évènement Key_Press:

   private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == ',' || e.KeyChar=='.')
            {
                if (textBox1.Text.Contains(e.KeyChar))
                    e.Handled = true;
            }
        }
Messages postés
31
Date d'inscription
samedi 19 octobre 2002
Statut
Membre
Dernière intervention
10 mars 2009

Merci pour ton aide, cela fonctionne :).

En réalité c'est une DataGridViewTextBoxColumn, c'est imposé comme ça.