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

Windows Forms Discussion :

[C#][WinForm]Recherche de valeur


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de doudoustephane
    Homme Profil pro
    Gérant
    Inscrit en
    Août 2005
    Messages
    1 129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 129
    Par défaut [C#][WinForm]Recherche de valeur
    Bonjour. alors voila, j'ai besoin d'avoir un mot associe a une valeur dans "un truc" (je ne sais pas trop quoi prendre) et ensuite, pouvoir faire des recherches dessus (dans le me style que les index d'aide : on rentre une lettre et la liste va a cette lettre, on en rentre une aute, elle va a ce qui correspond aux 2 lettres...)

    pourriez vous me dire ce que je dois utiliser pour faire ca et m'aiguiller un peu sur comment faire la recherche car la, je patauge et je ne trouves rien...

    merci d'avance...

  2. #2
    Membre émérite Avatar de zeavan
    Architect
    Inscrit en
    Avril 2003
    Messages
    590
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : Autre

    Informations professionnelles :
    Activité : Architect

    Informations forums :
    Inscription : Avril 2003
    Messages : 590
    Par défaut
    j'essaie de comprendre :

    tu as comme mots dans une db:

    • bon
    • bonjour
    • bonne nuit
    • box
    tu tape : b (tu recois tous les mots)
    bo (tous les mots)
    bon (tous sauf box)
    bonn (bonne nuit)

    c'est bien ca??

  3. #3
    Membre éprouvé
    Avatar de doudoustephane
    Homme Profil pro
    Gérant
    Inscrit en
    Août 2005
    Messages
    1 129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 129
    Par défaut
    Citation Envoyé par zeavan
    j'essaie de comprendre :

    tu as comme mots dans une db:
    • bon
    • bonjour
    • bonne nuit
    • box
    tu tape : b (tu recois tous les mots)
    bo (tous les mots)
    bon (tous sauf box)
    bonn (bonne nuit)

    c'est bien ca??
    oui, c'est exactement ca que je veux faire mais je ne sais pas dans quoi mettre mes mots ni comment faire ca....

  4. #4
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 128
    Par défaut
    Je pense que ça dépend du nombre total de tes mots.
    Tu pourrais utiliser une table de hachage, mais j'avoue avoir du mal à faire ça...

    Si ça peut t'aider, je te renvoie à la fac de C#, pour l'utilisation de la collection SortedList : http://rmdiscala.developpez.com/cour...htm#SortedList

  5. #5
    Membre éprouvé
    Avatar de doudoustephane
    Homme Profil pro
    Gérant
    Inscrit en
    Août 2005
    Messages
    1 129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 129
    Par défaut
    peut-etre, mais comment gerer l'affichage de ta recherche avec ca?

  6. #6
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 111
    Par défaut
    salut,

    j'avais fait ça avec un textbox et un listbox (mais j'ai tout viré pour faire autrement) sinon le point de depart etait ce bout de code qui concerne un combo :

    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
    36
    37
    38
    39
    40
    41
    42
    Imports System.Windows.Forms
     
    Public Class ComboBoxC
        Inherits ComboBox
     
        Private _AutoComplete As Boolean = True
        'Variable permettant à la procedure OnTextChanged de savoir si on effectue une recherche ou pas
     
        Protected Overrides Sub OnKeyDown(ByVal e As KeyEventArgs)
            'evenement lancé quand on presse sur une touche dans le combo
            _AutoComplete = e.KeyCode <> Keys.Delete And e.KeyCode <> Keys.Back
            'Si action DEL ou BACKDEL la recherche ne se fait pas
     
            MyBase.OnKeyDown(e)
            'puisqu'on a overridé la methode OnKeyDown de la classe
            ' de base ComboBox sinon les delegues qui sont enregistres
            'ne recevront plus la notification de l'événement (à savoir une touche a ete pressée
        End Sub
     
        Protected Overrides Sub OnTextChanged(ByVal e As EventArgs)
            'Cette methode est lancee lorsque le texte dans le combo a ete change
            If _AutoComplete Then
                'on s'assure que l'utilisateur n'a pas tape la touche retour (fleche droite ou la touche de suppresion
                Dim TextEntered As String = Me.Text
                'on recupere le texte en cours dans le combo
                Dim index As Integer = Me.FindString(TextEntered)
                'La methode FindString fait partie de la classe ComboBox
                If index >= 0 Then
                    'Si le texte tape existe dans l'un des elements du combo
                    _AutoComplete = False
     
                    Me.SelectedIndex = index
                    'On deplace la selection du combo en fonction du texte trouve
                    _AutoComplete = True
                    Me.Select(TextEntered.Length, Me.Text.Length)
                    'on ne seletionne que le texte qui a ete ajoute
                End If
            End If
            MyBase.OnTextChanged(e)
            'meme explication seulement l'evenement est : changement de texte
        End Sub
    End Class
    y'a plus qu'a modifier pour afficher dans une listbox...

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

Discussions similaires

  1. recherche de valeurs dans un tableur excel
    Par maxiut dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 16/05/2006, 07h25
  2. [WinForms] ComboBox avec valeur non désirée
    Par Ditch dans le forum Général Dotnet
    Réponses: 14
    Dernier message: 11/04/2006, 16h52
  3. Recherche de valeurs propres
    Par petdelascar dans le forum Algorithmes et structures de données
    Réponses: 18
    Dernier message: 01/03/2006, 17h11
  4. [DAO]rechercher la valeur max d'un identifiant
    Par stressy dans le forum Access
    Réponses: 3
    Dernier message: 13/12/2005, 11h28
  5. Réponses: 7
    Dernier message: 26/10/2004, 11h02

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