У меня есть DataTrigger для установки фона TextBox на основе связанного свойства.
Вот оптимизированная версия XAML:DataTrigger in Style в HierarchicalDataTemplate не работает - TreeView
<TreeView >
<TreeViewItem Header="Things" >
<TreeViewItem.Resources>
<Style TargetType="{x:Type TextBlock}">
<Style.Triggers>
<DataTrigger Binding="{Binding IsDirty}" Value="True">
<Setter Property="Background" Value="LightGray" />
</DataTrigger>
</Style.Triggers>
</Style>
<HierarchicalDataTemplate DataType="{x:Type local:Type1}" ItemsSource="{Binding Children, Mode=OneWay}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Name}" Margin="6,0,6,0" />
<TextBlock Text="{Binding IsDirty}" Margin="6,0,6,0" />
<i:Interaction.Behaviors>
<dragDrop:FrameworkElementDropBehavior DragEffect="Move" />
</i:Interaction.Behaviors>
</StackPanel>
</HierarchicalDataTemplate>
</TreeViewItem.Resources>
</TreeViewItem>
Я добавил TextBlock для отображения значения свойства IsDirty; Когда это верно, фон остается неизменным.
Я попытался переместить стиль в HierarchicalDataTemplate.Resources, но это не имело значения.
Что я вижу?
Спасибо -
Спасибо! Я думал, что попробовал поставить Style в HDT.Resources, но я, должно быть, поместил их в другое место ... Полезная ссылка тоже. – Number8