IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Control de saisie Silverlight


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 152
    Par défaut Control de saisie Silverlight
    Bonjour,

    Je voudrais savoir comment on peut, via des EventHandlers, contrôler la saisie dans un TextBox.

    Ex :
    TextBox_Alpha est un TextBox qui, lors de la saisie d'un caractère non alphabétique, doit annuler cette saisie.

    TextBox_Num est un TextBox qui, lors de la saisie d'un caractère non numérique, doit annuler cette saisie.

    J'ai essayé avec les évènements KeyUp et KeyDown, mais ces évènements ne peuvent pas être annulés.

    Vous auriez des idées? Merci d'avance.

  2. #2
    Membre émérite

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2011
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2011
    Messages : 487
    Par défaut
    J'ai rien qui me vient en tête mais tu peux faire un truc bourrin genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public void OnTextChanged(object sender, EventArgs e)
    {
       string temp = MyTextBox.Text;
     
        for(int i = 0; int < temp.Length; i++)
        {
            if(Char.IsNumber(temp, i)
                temp = temp.Remove(i, 1);
        }
    }
    Ou alors en une ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public void OnTextChanged(object sender, EventArgs e)
    {
        MyTextBox.Text = new String(MyTextBox.Text.Where(c => !Char.IsNumber(c)).ToArray());
    }
    Mon blog sur les technos .NET et Agile -> http://blog.developpez.com/maximepalmisano/

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 152
    Par défaut
    Merci MaximePalmisano, t'as réponse m'a aidé à avancer un peu... Mais il me reste quelques soucis (le for n'est pas très efficace pour une saisie en Copier/Coller, le curseur se met automatiquement en début après la validation)...Mais je pense que je m'en sortirais

    Merci et bonne journée!

  4. #4
    Membre émérite

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2011
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2011
    Messages : 487
    Par défaut
    De rien. le LinQ est peut être meilleur en terme de perf, j'avoue que j'en ai aucune idée.

    Si tu veux mettre le curseur à la fin, je pense que tu peux faire Select(MyTextBox.Text.Length, 0) mais je n'en suis pas sur.
    Mon blog sur les technos .NET et Agile -> http://blog.developpez.com/maximepalmisano/

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Controle de saisie sur une liste déroulante
    Par antier dans le forum IHM
    Réponses: 3
    Dernier message: 07/12/2005, 05h42
  2. Controler une saisie
    Par philippef dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 15/08/2005, 10h36
  3. DBGrid personnalisé (controle de saisie numérique et date).
    Par abdelghani_k dans le forum Bases de données
    Réponses: 2
    Dernier message: 18/04/2005, 18h50
  4. ptit probleme de controle de saisie de formulaire
    Par coachbob44 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 24/03/2005, 14h09
  5. [LG]contrôle de saisie
    Par zetterberg_10 dans le forum Langage
    Réponses: 8
    Dernier message: 10/02/2005, 13h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo