Например, в XAML со списком элементов, который сгруппирован и отсортирован:
<ResourceDictionary>
<CollectionViewSource x:Key="collectionViewSource" Source="{Binding Items}" IsLiveGroupingRequested="True" IsLiveSortingRequested="True">
<CollectionViewSource.GroupDescriptions>
<PropertyGroupDescription PropertyName="Group" />
</CollectionViewSource.GroupDescriptions>
<CollectionViewSource.SortDescriptions>
<ComponentModel:SortDescription PropertyName="Group.Rating" />
<ComponentModel:SortDescription PropertyName="ID" />
</CollectionViewSource.SortDescriptions>
<CollectionViewSource.LiveGroupingProperties>
<System:String>Group</System:String>
</CollectionViewSource.LiveGroupingProperties>
<CollectionViewSource.LiveSortingProperties>
<System:String>Group.Rating</System:String>
</CollectionViewSource.LiveSortingProperties>
</CollectionViewSource>
</ResourceDictionary>
<ListBox x:Name="listBox" ItemsSource="{Binding Source={StaticResource collectionViewSource}}" />
Если ключ сортировки группы можно изменить, группы не переупорядочиваются, даже если активная группировка и оперативная сортировкавключено.
Что мне не хватает?