2010-12-15 4 views
5

je suit vue collectionComment trier les groupes de CollectionViewSource

<CollectionViewSource x:Key="messages" Source="{Binding src}"> 
    <CollectionViewSource.GroupDescriptions> 
     <PropertyGroupDescription PropertyName="Group"/> 
    </CollectionViewSource.GroupDescriptions> 
</CollectionViewSource> 

Puis-je céder à ItemsSource de TreeView. Maintenant, comment trier Groupes par leur nom? Ils semblent avoir un ordre aléatoire.

Répondre

6

Faites simplement le tri par groupe. Cela devrait fonctionner:

<CollectionViewSource x:Key="messages" Source="{Binding src}"> 
    <CollectionViewSource.GroupDescriptions> 
     <PropertyGroupDescription PropertyName="Group"/> 
    </CollectionViewSource.GroupDescriptions> 
    <CollectionViewSource.SortDescriptions> 
     <SortDescription PropertyName="Group" /> 
    </CollectionViewSource.SortDescriptions> 
</CollectionViewSource> 
+0

savez-vous comment retirer cela dans le code? Mon intention est de trier les groupes existants dans la grille quand un bouton ascendant/descendant est cliqué. Ce qui se passe est que je suis capable de trier mes lignes par le nom de champ, mais pas les groupes. – TWood

+0

TWood - messages.SortDescriptions.Add (nouvelle SortDescription ("Groupe", ListSortDirection.Ascending)); – cjmurph

+0

Juste au cas où quelqu'un a le même problème que moi: Vous devrez peut-être ajouter xmlns: scm = "espace_clr: System.ComponentModel; assembly = WindowsBase" dans votre définition de fenêtre et utiliser "scm" comme espace de noms pour SortDescription. –

Questions connexes