Я создал пользовательский элемент управления, содержащий ListBox, который связан через CollectionViewSource. ListBox имеет CheckBoxes для пользователя, чтобы сделать множественный выбор. Я хотел бы, чтобы список был отсортирован с выбранными флажками вверху. Я надеюсь, что это сработает, как только пользователь что-то выберет или отменит выбор. Кажется, я не могу найти ничего, что делало бы это через xaml. Что я делаю не так?
В моем xaml
<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">