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 :

[WPF - Blend] Binding lié à un click button


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 13
    Par défaut [WPF - Blend] Binding lié à un click button
    Bonjour,

    Je suis en train de découvir Expression Blend.
    J'arrive à remplir une listbox en me bindant sur un array d'une data source xml. Pareil avec un itemscontrol de base qui contient des boutons liés à cette meme source xml.
    Maintenant j'aimerais que le click d'un bouton mette à jour la listbox avec le contenu du bouton qui serait lui meme un sous array de ma data source.
    Y a moyen de faire ça dans Blend, ou faut écrire du code?

    Voici la structure xml de ma source pour donner une idée:
    Les boutons c les Categories
    Les item de la listbox c les Childrens

    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
     
    <Categories>
      <Category>
        <Title>Category1</Title>
        <Childrens>
          <Child>
            <Title>Title1</Title>
            <ScreenShot>C:\tmp\image1.jpg</ScreenShot>
          </Child>
     
          <Child>
            <Title>Title2</Title>
            <ScreenShot>C:\tmp\image2.jpg</ScreenShot>
          </Child>
        </Childrens>
      </Category>
     
      <Category>
        <Title>Category2</Title>
        <Childrens>
          <Child>
            <Title>Title3</Title>
            <ScreenShot>C:\tmp\image3.jpg</ScreenShot>
          </Child>
     
          <Child>
            <Title>Title4</Title>
            <ScreenShot>C:\tmp\image4.jpg</ScreenShot>
          </Child>
        </Childrens>
      </Category>
    </Categories>
    Merci!

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Par défaut
    J'ai pas compris ce que tu veux faire .....

  3. #3
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 13
    Par défaut
    Oui je n'ai pas été tres clair.
    En fait je suis tombé sur 1 post dans ton blog qui correspond à ma problématique qui est, en gros pour reprendre l'intitulé du post, comment réaliser une opération Maitre/Détails avec WPF?
    J'ai d'ailleurs reformulé ma demande en commentaire à ton post.
    La voici:

    Ta solution marche tres bien qd on a la sélection.

    Comment on fait lorsqu'on binde la collection "maitre" non pas à une listview (ou autre élément gérant la sélection) mais à un itemscontrol tout simple contenant des boutons. L'idée étant que le click d'un bouton affiche la collection "détails" qui lui est associée.

    Merci!

  4. #4
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Par défaut
    Citation Envoyé par OS_trimble Voir le message
    Comment on fait lorsqu'on binde la collection "maitre" non pas à une listview (ou autre élément gérant la sélection) mais à un itemscontrol tout simple contenant des boutons. L'idée étant que le click d'un bouton affiche la collection "détails" qui lui est associée.

    Merci!
    L'idée serait de récupérer l'élément de ton ItemsControl qui est sélectionné. Une fois que c'est fait, tu récupères sa collection détails

  5. #5
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 13
    Par défaut
    Merci pour ta réponse. J'étais sur cette piste quand j'ai posté le message et je viens de trouver la solution.

    J'ai ajouté à la main dans le fichier xaml une fonction click dans le itemtemplate de mon bouton.
    Puis dans la fonction click je récupère le content du bouton qui est lié à ma structure de donnée xml.
    Je définis ensuite le chemin en relatif à parcourir pour obtenir la collection détail et je fais un binding au niveau du code.
    C'est le chemin relatif qui me manquait en fait...
    Voici le code de ma fonction click:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
      private void CategoryButtonClick(object sender, RoutedEventArgs e)
      {
       Binding newBinding = new Binding();
       Button button = (Button)e.Source;
     
       newBinding.Source = button.Content;
       newBinding.XPath = "../Chidrens/Child";
       MaDetailList.SetBinding(ListBox.ItemsSourceProperty, newBinding);
      }
    Dommage qu'on ne puisse pas à travers Blend définir une fonction qui gère le click bouton.

  6. #6
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Par défaut
    Blend est un outil de designer/intégrateur, pas de développeur

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

Discussions similaires

  1. wpf wrappanel bind ObservableCollection<Button>
    Par maxmax39 dans le forum C#
    Réponses: 3
    Dernier message: 06/05/2015, 15h28
  2. Click button : Mon code marche mais l'affichage ne suis pas !
    Par 19cmos83 dans le forum Interfaces Graphiques en Java
    Réponses: 12
    Dernier message: 03/10/2007, 13h33
  3. [WPF] UserControl -> binding ??
    Par UNi[FR] dans le forum C#
    Réponses: 1
    Dernier message: 10/09/2007, 11h31
  4. UserControl : event on click button
    Par breezer911 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 09/03/2007, 09h38
  5. [debutant] click button
    Par jerome86600 dans le forum VC++ .NET
    Réponses: 3
    Dernier message: 13/07/2006, 15h18

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