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 Presentation Foundation Discussion :

Binder une liste dans un Container


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    351
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 351
    Par défaut Binder une liste dans un Container
    Bonjour,

    Dans une application WPF utilisant le pattern MVVM, j'ai un ViewModel contenant un IEnumerable d'un objet que je souhaite afficher.
    Dans ce ViewModel, j'ai également une DelegateCommand s'appelant ExecuteCommand.

    Je voudrais, pour chacun de mes objets contenus dans la liste, afficher des boutons les uns sous les autres devant, chacun, représenter ces objets.

    J'ai déjà créé un ControlTemplate pour mes boutons qui fonctionne correctement.

    je ne sais pas trop quoi utiliser pour afficher cette liste d'objets. J'étais parti avec un ListBox pour lequel j'ai créé un DataTemplate. Ce dernier affiche à son tour le ControlTemplate du bouton. Mes données sont bien affichées comme je le souhaite. Cependant, je souhaite effectuer un binding de 'ExecuteCommand' sur chaque Item, pour que quand je clique sur mon DataTemplate, la commande soit exécuter.
    Je ne sais pas comment faire.

  2. #2
    Membre Expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Par défaut
    Tu puex faire quelque chose de ce style dans le template du bouton :
    Code xaml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Command="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type ListBox}}, Path=DataContext.ExecuteCommand}"

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    351
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 351
    Par défaut
    Et dans quel tag mettrais-tu cet attribut Command ? parce que c'est bien ça mon problème, je ne remets pas de bouton dans mon ControlTemplate de bouton

  4. #4
    Membre émérite Avatar de jmix90
    Homme Profil pro
    Consultant .Net
    Inscrit en
    Juillet 2007
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2007
    Messages : 576
    Par défaut
    Hello,

    Et dans quel tag mettrais-tu cet attribut Command ?
    Tu peux mettre cette valeur dans la propriété Command du bouton templaté à l'aide d'un setter de style :

    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <Style>
    <Setter Property="Command" Value="Le code de GuruuMeditation"/>
    <Setter Property="Template">
    <!-- ton template -->
    </Setter>
    </Style>

    Bon courage,

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    351
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 351
    Par défaut
    Salut,

    En fait c'est tout bon, j'avais un autre souci, la Command s'exécute très bien si je ne fais que la binder directement dans le Bouton, pas besoin de faire quelque chose dans le ControlTemplate ou le Style.

    Merci de l'aide en tout cas

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

Discussions similaires

  1. ajouter une list dans un container
    Par empire.dev dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 22/05/2009, 20h04
  2. Rechercher les element d'une liste dans une autre liste
    Par fessebleu dans le forum Langage
    Réponses: 30
    Dernier message: 24/04/2006, 21h23
  3. Réponses: 29
    Dernier message: 03/11/2005, 10h37
  4. simuler un double click sur une liste dans un dbgrid
    Par bertrand_declerck dans le forum Bases de données
    Réponses: 1
    Dernier message: 01/09/2005, 10h45
  5. Réponses: 5
    Dernier message: 03/02/2004, 14h20

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