Итак, у меня есть сетка внутри списка. Цель состоит в том, чтобы, когда выбран listboxitem, я хочу, чтобы сетка отображалась, когда выбранный элемент расширялся, чтобы отобразить более подробную информацию. Я установил триггер стиля для этого, и он отлично работает, за исключением одного: стили меток и текстовых блоков не используются в сетке.WPF Collapsed Grid not Styling
Я предполагаю, что это имеет какое-то отношение к состоянию по умолчанию, когда состояние listboxitem сворачивается, поэтому wpf пропускает стили, я надеялся, что он включит их при выборе, но это не так. Если я использую Style = "{StaticResource Mystyle}" на каждом ярлыке/текстовом блоке, он отлично стирается, кажется, что он не делает унаследованную магию стиля, как это происходит с видимыми сетками в другом месте приложения. См. Код ниже, метки не отображаются жирным шрифтом или чем-либо, когда появляется сетка.
<Style TargetType="{x:Type Grid}" x:Key="ListBoxItemCollapseGrid">
<Style.Triggers>
<DataTrigger Binding="{Binding
Path=IsSelected,
RelativeSource=
{
RelativeSource
Mode=FindAncestor,
AncestorType={x:Type ListBoxItem}
}
}"
Value="False">
<Setter Property="Grid.Visibility" Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
<Style.Resources>
<Style TargetType="{x:Type Label}">
<Setter Property="FontWeight" Value="Bold" />
<Setter Property="Foreground" Value="{StaticResource BaseText}" />
<Setter Property="Padding" Value="3,0,0,0" />
</Style>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="{StaticResource BaseText}" />
</Style>
</Style.Resources>
</Style>