如果我定义了以下样式:
<UserControl.Resources>
<Style TargetType="TextBlock" x:Key="ProblemStyle">
<Setter Property="FontSize" Value="40"/>
<Setter Property="FontWeight" Value="Bold"/>
</Style>
</UserControl.Resources>
然后,当我将ContentPresenter数据绑定(bind)到字符串时,在WPF中,我可以使用以下XAML使其根据需要设置文本样式:
<ContentPresenter Content="{Binding Problem}">
<ContentPresenter.Resources>
<Style TargetType="TextBlock" BasedOn="{StaticResource ProblemStyle}" />
</ContentPresenter.Resources>
</ContentPresenter>
但是,在Silverlight中,这不起作用。有两种方法都适用吗?
最佳答案
使用TextElement Attached属性。您将无法设置样式,但是可以使用影响Textblock的大多数属性。
<ContentPresenter x:Name="ContentPresenter"
ContentSource="Header"
HorizontalAlignment="Left"
TextElement.FontFamily="Segoe UI"
TextElement.FontSize="12"
TextElement.FontWeight="Bold"
TextElement.Foreground="White"
RecognizesAccessKey="True" />