我有两种风格
<Style x:Key="FontElemNivel1">
<Setter Property="TextElement.FontSize" Value="12"/>
<Setter Property="TextElement.FontFamily" Value="Tahoma"/>
<Setter Property="TextElement.FontWeight" Value="Bold"/>
</Style>
这个
<Style x:Key="ElementoNivel1" TargetType="TextBlock">
<Setter Property="Style" Value="{StaticResource FontElemNivel1}"/>
<Setter Property="HorizontalAlignment" Value="Left"/>
</Style>
如果我尝试在像这样的对象上使用第二个
<TextBlock Text="Entidad" Style="{DynamicResource ElementoNivel1}"/>
编译器抛出此错误:
错误16 Style对象不能影响它所适用的对象的Style属性。
为什么会这样? 如何正确实施?
答案 0 :(得分:3)
<Style x:Key="ElementoNivel1" TargetType="TextBlock" BasedOn="{StaticResource FontElemNivel1}">
这应该纠正错误。您尝试将样式指定为样式。
答案 1 :(得分:1)
对于BasedOn工作,FontElemNivel1将需要定位Textblock。
如果不适合,因为FontElemNivel1需要用于文本块以外的其他内容,那么这个以前回答的问题可能会有所帮助: XAML Combine Styles