我有一个具有Style={TemplateBinding ParentDependencyProperty}
我需要在这个TextBlock上放置一些DataTriggers,但不要在整个样式上放置。
我需要这样的东西:
<TextBlock>
<Style BasedOn="StyleInParentDependencyProperty">
<Style.Triggers>
...
</Style.Triggers>
</Style>
</TextBlock>
我无法弄清楚如何,因为Styles的BasedOn属性中不允许绑定。我是WPF的新手,似乎一直困在这里。
感谢您的帮助。
答案 0 :(得分:1)
你可以做这样的事情
<Style TargetType="TextBlock" x:Key="Default">
<Setter Property="Background" Value="Red"></Setter>
<Setter Property="FontFamily" Value="Segoe Black" />
<Setter Property="HorizontalAlignment" Value="Center" />
<Setter Property="FontSize" Value="32pt" />
<Setter Property="Foreground" Value="#777777" />
</Style>
并在您需要TextBlock
DataTriggers
上定义此样式
<Style BasedOn="{StaticResource Default}" TargetType="TextBlock" x:Key="TextBlockWithTriggers">
<Style.Triggers> .... </Style.Triggers>
</Style>
在TextBlock
上定义
<TextBlock Style="{StaticResource TextBlockWithTriggers}"/>