Я использую DataGrig Grouping для своих данных. В заголовке моей группы я использую флажки для проверки ячеек ColumnCheckBox, для этого у меня должны быть данные строк для каждой группы.
XAML:
<DataGrid.GroupStyle>
<GroupStyle>
<GroupStyle.ContainerStyle>
<Style TargetType="{x:Type GroupItem}">
<Setter Property="Margin" Value="0,0,0,1"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupItem}">
<Expander IsExpanded="True">
<Expander.Header>
<DockPanel>
<TextBlock FontWeight="Bold" Text="{Binding Path=ItemCount, StringFormat=({0})}"/>
<TextBlock FontWeight="Bold" Text="{Binding Path=Name}"/>
</DockPanel>
</Expander.Header>
<Expander.Content>
<ItemsPresenter/>
</Expander.Content>
</Expander>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</GroupStyle.ContainerStyle>
</GroupStyle>
</DataGrid.GroupStyle>
CS:
Instances = new ListCollectionView(types);
Instances.GroupDescriptions.Add(new PropertyGroupDescription("View"));
Instances.GroupDescriptions.Add(new PropertyGroupDescription("Category"));
Instances.GroupDescriptions.Add(new PropertyGroupDescription("Family"));
Таким образом, идея состоит в том, чтобы связать флажки заголовков с массивом идентификаторов для каждой строки, а при проверке заголовков изменить связанные значения CheckColumn. Но для этого мне нужно собрать все строки группы. Возможно ли реализовать?
Итак, у меня есть: https://i.ibb.co/7g9GpqL/p1.png
А мне нужно: https://i.ibb.co/WW7S4cn/p2.png