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 :

Group et Header Template


Sujet :

Windows Presentation Foundation

  1. #1
    Membre averti

    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    908
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 908
    Points : 447
    Points
    447
    Par défaut Group et Header Template
    Salut tout le monde,

    J'essaye de reproduire l'exemple suivant http://msdn.microsoft.com/en-us/libr...=VS.90%29.aspx
    qui montre comment Grouper un ObservableCollection.

    Et la j'ai un soucis, le groupage se fait bien mais il ne m'affiche pas le binding ...
    Mon code est identique a une ligne prés ...

    Pour info voici le code de l'exemple :

    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
     
        <Window.Resources>
            <DataTemplate x:Key="groupingHeaderTemplate">
                <TextBlock Text="{Binding Path=Name}"
                           Foreground="Navy" FontWeight="Bold" FontSize="12"/>
            </DataTemplate>
     
     
            <CollectionViewSource 
                  Source="{Binding Source={x:Static Application.Current}, Path=AuctionItems}"   
                  x:Key="listingDataView" />
        </Window.Resources>
     
            <ListBox Name="Master" Grid.Row="2" Grid.ColumnSpan="3" Margin="8"
                ItemsSource="{Binding Source={StaticResource listingDataView}}">
                <ListBox.GroupStyle>
                    <GroupStyle 
                      HeaderTemplate="{StaticResource groupingHeaderTemplate}"
                      />
                </ListBox.GroupStyle>
            </ListBox>
    Ma ligne change au niveau du
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
          <CollectionViewSource 
                  Source="{Binding Source={x:Static Application.Current}, Path=AuctionItems}"
    ou moi j'ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Source="{Binding Path=AuctionItems}"
    en effet je ne travaille pas dans directement dans la fenêtre principale mais dans un usercontrol que j'ai mis dans ma fenêtre .

    Je suis débutant, je cherche une piste pour comprendre ce qui ne fonctionne pas.

    Merci d'avance

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

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

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

    Dans tout les cas il faut que tu spécifie un objet source sur lequel le binding est fait. Dans l'exemple, le binding est fait sur la propriété AuctionItems de l'application courante. Toi tu as supprimé le paramètre 'Source' et le binding va donc être fait sur le DataContext de la CollectionViewSource qui est vide... Donc pas de binding !

    Il faut donc que tu puisses fournir comme source une collection d'objets. Tu peux mettre cette collection dans le datacontext de ton userControl est utiliser directement ce code :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
      <CollectionViewSource Source="{Binding }" />
    Jonathan ANTOINE - Découvrez mon livre: MVVM, de la découverte à la maîtrise.

    Microsoft MVP Client Application Development
    - MCPD Windows 4.0, etc.
    Mon blog : http://www.jonathanantoine.com

  3. #3
    Membre averti

    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    908
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 908
    Points : 447
    Points
    447
    Par défaut
    Bonsoir jmix90

    En effet en j'ai enlevé le binding
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Binding Source={x:Static Application.Current}
    car cela ne fonctionnait pas, et sans la ligne le binding fonctionne ...
    J'ai bien tous mes items qui s affichent dans la listbox; c 'est uniquement le binding du groupingHeaderTemplate qui ne fonctionne pas.

    C'est cela que j arrive pas a comprendre ...

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

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

    Informations forums :
    Inscription : Juillet 2007
    Messages : 576
    Points : 998
    Points
    998
    Par défaut
    Citation Envoyé par rvzip64 Voir le message
    c 'est uniquement le binding du groupingHeaderTemplate qui ne fonctionne pas.
    Cela peut venir de plusieurs choses :

    Tu utilises bien le même code source ?
    Ton code-behind n'a pas été modifié ? Tu es sur que la CollectionViewSource 'listingDataView' du code behin est bien celle sur la quelle tu es bindé ?

    Tu utilises bien les mêmes objets AuctionItem ?
    Jonathan ANTOINE - Découvrez mon livre: MVVM, de la découverte à la maîtrise.

    Microsoft MVP Client Application Development
    - MCPD Windows 4.0, etc.
    Mon blog : http://www.jonathanantoine.com

Discussions similaires

  1. Group Header du template "coffee" v. 3.6.0
    Par jadey dans le forum iReport
    Réponses: 0
    Dernier message: 29/10/2009, 13h46
  2. Header template repeater
    Par jacky01 dans le forum ASP.NET
    Réponses: 6
    Dernier message: 07/09/2009, 12h44
  3. Réponses: 12
    Dernier message: 03/07/2008, 11h56
  4. Réponses: 4
    Dernier message: 23/08/2006, 15h31
  5. [C#] Header template
    Par drasis dans le forum ASP.NET
    Réponses: 8
    Dernier message: 18/05/2004, 14h39

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