Как сортировать элементы TreeView с помощью SortDescriptions в Xaml?

У меня есть список слоев , привязанных к TreeView , где каждый экземпляр имеет список эффектов . Я показываю их с помощью HierarchicalDataTemplate, который отлично работает, но я пытаюсь отсортировать их с помощью SortDescriptions .

Я не знаю, как это сделать в xaml, но делаю это только для первого уровня элементов, не подпункты:

ICollectionView view = CollectionViewSource.GetDefaultView ( treeView1.ItemsSource );
view.SortDescriptions.Add ( new SortDescription ( "Name", ListSortDirection.Ascending ) );

Я пытаюсь отсортировать их сначала по .Color , затем по .Name .

Есть идеи?

EDIT: Я добавил это код:

<Window.Resources>

    <CollectionViewSource x:Key="SortedLayers" Source="{Binding AllLayers}">
        <CollectionViewSource.SortDescriptions>
            <scm:SortDescription PropertyName="Color" />
            <scm:SortDescription PropertyName="Name" />
        </CollectionViewSource.SortDescriptions>
    </CollectionViewSource>

</Window.Resources>

Но это по-прежнему только для первого уровня иерархии. Как я могу указать его для каждого слоя. Коллекция эффектов?

9
задан Joan Venge 19 April 2011 в 23:12
поделиться