Определите ваш триггер в стиле самого TextBlock, TargetName
обычно для ControlTemplates, тогда вы можете просто отбросить его.
Это не является обязательным:
Binding="IsBottomLevel"
Вы должны заменить это следующим:
Binding="{Binding IsBottomLevel}"
<TextBlock Text="{Binding Name}">
<TextBlock.Style>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="Red" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsBottomLevel}" Value="True">
<Setter Property="Foreground" Value="Blue" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
Если вы установите красный передний план непосредственно в объявлении TextBlock, триггер не будет действовать из-за приоритета .