我创建了一个包含通过 CollectionViewSource 绑定的 ListBox 的用户控件。ListBox 有 CheckBoxes 供用户进行多项选择。我希望列表与顶部的选定复选框一起排序。我希望一旦用户选择或取消选择某些东西,它就会起作用。我似乎无法通过 xaml 找到任何可以做到这一点的东西。我究竟做错了什么?
在我的xml中
<CollectionViewSource x:Key="SortedItems"
Source="{Binding Items, ElementName=Selector}"
IsLiveSortingRequested="True">
<CollectionViewSource.LiveSortingProperties>
<System:String>IsSelected</System:String>
</CollectionViewSource.LiveSortingProperties>
<CollectionViewSource.SortDescriptions>
<scm:SortDescription PropertyName="IsSelected"
Direction="Descending" />
<scm:SortDescription PropertyName="CodeDescriptionText" />
</CollectionViewSource.SortDescriptions>
</CollectionViewSource>
和我的列表框
<ListBox x:Name="ItemsControl"
SelectionMode="Multiple"
ItemsSource="{Binding Source={StaticResource SortedItems}}"
ItemTemplate="{Binding ItemTemplate, ElementName=Selector}"
ItemContainerStyle="{StaticResource ListBoxItemStyle}"
Grid.Row="1"
Grid.ColumnSpan="3">