2011-04-25 82 views

回答

7

你會想爲此使用CollectionView

private void Button1_Click(object sender, RoutedEventArgs e) 
{ 
    ICollectionView view = CollectionViewSource.GetDefaultView(SomeCollection); 
    view.SortDescriptions.Add 
    (
     new SortDescription("Name", ListSortDirection.Descending) 
    ); 
} 

要在XAML中進行排序,您可以使用CollectionViewSource類;從MSDN的例子:

<src:Places x:Key="places"/> 

<CollectionViewSource Source="{StaticResource places}" x:Key="cvs"> 
    <CollectionViewSource.SortDescriptions> 
    <scm:SortDescription PropertyName="CityName"/> 
    </CollectionViewSource.SortDescriptions> 
    <CollectionViewSource.GroupDescriptions> 
    <dat:PropertyGroupDescription PropertyName="State"/> 
    </CollectionViewSource.GroupDescriptions> 
</CollectionViewSource> 

<ListBox ItemsSource="{Binding Source={StaticResource cvs}}" 
     DisplayMemberPath="CityName" Name="lb"> 
+0

任何方式來做到這一點在XAML而不是? – michael 2011-04-25 18:11:19

+0

是的,我添加了一些更多的信息給我的答案。 – 2011-04-25 19:45:30

相關問題