Вопрос простой. Мне нужно сгруппировать мой ListView (в котором GridView) где-то так:
Проблема в том, что я перелопатил кучу статей и везде используется куча кода в Code-Behind (даже коллекцию часто задают в конструкторе). Мне нужно нормальное MVVM решение.
Проблема решена. Что нужно было сделать, так это добавить в ресурсы CollectionViewSource и в него добавить GroupDescription. В моем случае это:
<Window.Resources>
<CollectionViewSource x:Key="envVariables" Source="{Binding Variables}">
<CollectionViewSource.GroupDescriptions>
<PropertyGroupDescription PropertyName="Hive"/>
</CollectionViewSource.GroupDescriptions>
</CollectionViewSource>
</Window.Resources>
А в ListView установить ItemsSource следующим образом:
<ListView ItemsSource="{Binding Source={StaticResource envVariables}}">
и добавить GroupStyle:
<ListView.GroupStyle>
<GroupStyle>
<GroupStyle.HeaderTemplate>
<DataTemplate>
<TextBlock FontWeight="Bold" FontSize="14" Text="{Binding Name}"/>
</DataTemplate>
</GroupStyle.HeaderTemplate>
</GroupStyle>
</ListView.GroupStyle>
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости