Как я могу переключиться между GroupStyles
для ListView
на основе некоторых условий во время выполнения? Например, мне нужно использовать Default для элементов, которые имеют GroupStyle
имя заголовка null, а если оно не равно null, тогда использовать собственную тему GroupStyle
? Я попробовал GroupStyleSelector
, и он не работает, потому что он работает для многоуровневой группировки, и в моем случае у меня только одна группировка уровней.
Если да, то как?
Пользовательский GroupStyle
:
<Style x:Key="grouping"
TargetType="{x:Type GroupStyle}">
<Setter Property="ContainerStyle">
<Setter.Value>
<Style TargetType="{x:Type GroupItem}">
<Setter Property="Margin"
Value="0,0,0,5" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupItem}">
<Expander IsExpanded="False"
BorderBrush="#FFA4B97F"
BorderThickness="0,0,0,1">
<Expander.Header>
<DockPanel>
<TextBlock FontWeight="Bold"
Text="{Binding Name}"
Margin="0"
Width="250" />
<TextBlock FontWeight="Bold"
Text="{Binding Path=Items[0].StartTime, StringFormat=T}" />
</DockPanel>
</Expander.Header>
<Expander.Content>
<ItemsPresenter />
</Expander.Content>
</Expander>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Setter.Value>
</Setter>
</Style>
Большое спасибо.
С уважением,
Влад.