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 :

Rechercher en listbox un mot tappe dans une textbox (non-case sensitive)


Sujet :

C#

  1. #1
    Membre extrêmement actif
    Avatar de mihaispr
    Inscrit en
    Décembre 2008
    Messages
    1 025
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 025
    Points : 858
    Points
    858
    Par défaut Rechercher en listbox un mot tappe dans une textbox (non-case sensitive)
    Salut !

    J'ai une gui en c# qui contient 3 composantes. Un listbox avec des options , un textbox ou je tappe un mot et quand j'appuie mon boutton qui a le code suivant au -dessus il cherche si le mot est contenu dans le listbox j'ai utilise la fonction Equals . La troisieme composante de mon gui en c# c'est normalment un boutton. Le boutton s'appelle Compara.

    Ma question est comment remplacer la fonction Equals avec une autre fonction qui reconnait de n'etre pas case sensitive (MOV et mov) si j'ai l'element MOV qu'il trouve l'element dans le listbox meme si j'ai tape dans textbox mov ou MOV. Donc il trouve l'element n'importe le case utilise dans le textbox.

    J'espere de m'avoir fais compris!


    Voici le code du boutton:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    private void btnCompara_Click(object sender, EventArgs e)
            {
                //listBox1.Items[0] = listBox1.SelectedItem[0];
     
              //  MessageBox.Show(listBox1.SelectedItem.ToString());
     
     
                int nrItems = listBox1.Items.Count; // innumara cite ITEMS avem in ListBox
                //MessageBox.Show(z.ToString());
     
                if (textBox1.Text == "")
                {
                    MessageBox.Show("NU ai introdus nimic in casuta\r\n Te rog sa introduci ceva\r\n\n " + "A doua oara nu te mai rog si o sa ma enervez","Avertisment !!");
                }
                else
                {
                    for (int i = 0; i < nrItems; i++)
                    {
                        listBox1.SelectedItem = listBox1.Items[i]; // selecteaza automat primul rand
                        intarzie2();
                        //hot compiler compileaza in timp ce scrii linie intrerupta albastra
                        // intelissense - permite selectia unei metode dintr-o clasa din lista care apare
                        if (textBox1.Text.Equals(listBox1.Items[i].ToString()))
                        {
                            i = nrItems;
                            MessageBox.Show("Textul introdus in casuta " + "--" + textBox1.Text + "--" + " a fost gasit");
                        }
                        else if (i == nrItems - 1)
                            MessageBox.Show("Textul introdus in casuta " + "--" + textBox1.Text + "--" + " nu a fost gasit");
     
                        // En lieu d'Equal que je dois mettre je veux reconnaitre du textbox meme si je tappes  MOV == MOV si eu vre si MOV == mov et aussi mov=MOV . MOV se trouves comme element dans le listbox
                    }
                }
            }

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Plutôt que Equals, utilise la méthode static String.Compare sur les chaines; cette méthode possède une surcharge permettant de préciser la prise en compte de la case-sensitivity.

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 47
    Points : 35
    Points
    35
    Par défaut
    sinon tu fais des copies des 2 valeurs (listbox et textbox) tu les passe en majuscule avec ToUpper() et tu compare a ce moment la.

    Il faut passer par des variables sinon tu changeras les valeurs des strings.

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par gouroupasdebol Voir le message
    sinon tu fais des copies des 2 valeurs (listbox et textbox) tu les passe en majuscule avec ToUpper() et tu compare a ce moment la..
    C'est pour le moins loufoque comme idée dans la mesure où il existe une implémentation de IComparer spécifique à la case sensitivity. Ce genre de technique, chez moi, s'apelle "coder avec les pieds".

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  5. #5
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 47
    Points : 35
    Points
    35
    Par défaut
    je sais .... mais ça peut toujours servir de façon précaire si manque de temps de regarder le fonctionnement de l'interface.

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par gouroupasdebol Voir le message
    je sais .... mais ça peut toujours servir de façon précaire si manque de temps de regarder le fonctionnement de l'interface.

    Il n'y a pas à regarder le fonctionnement de l'interface puisqu'il existe une méthode Compare sur la classe string.

    Par ailleurs, de manière plus général, si un dev me fait une réponse de ce genre, il a interêt à argumenter un peu plus, car je considère la réponse comme difficilement admissible.

    Et si tu manques de temps, c'est peut être qu'à force d'appliquer cette "méthode" tu as fini par en perdre beaucoup

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  7. #7
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 47
    Points : 35
    Points
    35
    Par défaut
    je tourne peut être pas avec la même version que toi, mais sous VS2005 (en tout cas la mienne ), il y a une méthode String.CompareTo() mais celle-ci ne prend qu'un argument.

    PS : je ne manque pas de temps mais là c'est un peu HS.

  8. #8
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par gouroupasdebol Voir le message
    je tourne peut être pas avec la même version que toi, mais sous VS2005 (en tout cas la mienne ), il y a une méthode String.CompareTo() mais celle-ci ne prend qu'un argument.
    Relis ce que j'ai écrit supra : je parlais de la méthode static Compare de la clase string, pas de la méthode d'instance CompareTo.

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  9. #9
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 47
    Points : 35
    Points
    35
    Par défaut
    oups au temps pour moi j'avais pas vu le static.

Discussions similaires

  1. [XL-2007] propriete Format dans une textbox non reconnue
    Par karim19 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/10/2009, 12h25
  2. Recherche de mot précis dans une suite de mot
    Par Adrien38240 dans le forum C
    Réponses: 4
    Dernier message: 02/06/2008, 11h25
  3. Recherche par mot clé dans une base de donnée
    Par sihamsisim dans le forum ASP
    Réponses: 1
    Dernier message: 24/04/2008, 20h59
  4. [vb6] Surligner un mot dans une textbox après recherche
    Par Asdorve dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 04/07/2006, 12h26
  5. [DEBUTANT]Recherche mot contenu dans une String
    Par lynxman dans le forum Langage
    Réponses: 7
    Dernier message: 16/12/2005, 11h49

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