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

Silverlight Discussion :

autocomplete et binding


Sujet :

Silverlight

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 199
    Par défaut autocomplete et binding
    bonjour

    j'aimerai mettre en place un autocomplete bindé à une liste d'objet, et pouvoir personnaliser son affichage..

    j'ai une liste de personne définie par numéro, nom, prénom. Cette liste est une observable collection. au chargement de l'appli, un service WCF me charge cette liste et appel un raise property changed. ce code marche (testé pour affichage dans une datagrid).

    ce que j'aimerai, c'est me baser sur le nom et le prénom pour faire ma recherche.

    voici ce que j'ai trouvé pour le moment:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <input:AutoCompleteBox FilterMode="ContainsOrdinal" VerticalAlignment="Top" Margin="5" Width="170" 
                Height="30" x:Name="myACB" 
                ItemsSource="{Binding}" 
                ValueMemberPath="MaListeDePersonnes">
            <input:AutoCompleteBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel>
                        <TextBlock Text="{Binding Path=nom}"  />
                        <TextBlock Text="{Binding Path=prenom}"  />
                    </StackPanel>
                </DataTemplate>
            </input:AutoCompleteBox.ItemTemplate>
        </input:AutoCompleteBox>
    mon dataContext est défini dans mon userControl et est ok. Mon observable collection s'appelle ici "MaListeDePersonnes".

    je ne doit pas être très loin de la solution mais je ne sais pas trop quels paramètres passer ...?

  2. #2
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    ItemsSource="{Binding MaListeDePersonnes}" et enleve l'attribut ValueMemberPath.

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 199
    Par défaut
    en effet ça m'affiche bien ma liste de personne Par contre j'ai remarqué qu'à la saisie ça ne fait pas ce que je veux..

    si j'écrit le début d'un nom ça m'affiche toute la liste.. j'ai essayé de donner d'autres paramètre au filterMode mais je ne vois pas la différence..

    sachant que mes objets chargés sont des personnes avec un numéro nom et prénom, comment spécifier au composant que ma recherche se fera par "nom prenom" ?

  4. #4
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Ah ben oui il faut laisser le ValueMemberPath avec comme valeur "nom". Si tu veux que ta recherche se fasse sur nom + prenom tu peux creer une nouvelle propriete sur ton objet (FullName par exemple) qui retourne la concatenation de nom + prenom, et ensuite tu mets le nom de cette propriete dans l'attribut ValueMemberPath.

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 199
    Par défaut
    ah ok c'est bon ça tourne merci
    par contre dommage qu'on ne puisse pas customiser directement par quelles données on veux filtrer..

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

Discussions similaires

  1. [kdevelop] autocompletion
    Par hiko-seijuro dans le forum Environnement de Développement Intégré (EDI)
    Réponses: 2
    Dernier message: 13/11/2004, 13h57
  2. [Dbgrid] Picklist & Autocomplete ?
    Par dudux dans le forum Bases de données
    Réponses: 7
    Dernier message: 11/07/2004, 10h32
  3. Bind ou pas Bind?
    Par jonzuzu dans le forum MFC
    Réponses: 4
    Dernier message: 19/03/2004, 10h00
  4. []Erreur sur second emploi collection binding
    Par jacma dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 08/03/2004, 18h02
  5. Bind - sous-domaine
    Par _Gabriel_ dans le forum Réseau
    Réponses: 4
    Dernier message: 07/03/2004, 11h54

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