为什么窗口在设计时而不是在运行时显示样式

时间:2014-10-17 22:43:30

标签: wpf xaml resources styles

我创建了全新的wpf应用程序,在MainWindow.xaml上我有: enter image description here

为什么当我运行该应用程序时,我看不到相同的字体?我的xaml代码是:

<Window.Resources>
    <Style TargetType="{x:Type Window}" >
        <Setter Property="FontFamily" Value="Arial Black"/>
    </Style>
</Window.Resources>

<StackPanel>
    <TextBlock>This is a TextBlock</TextBlock>
    <Label>This is a Label</Label>
</StackPanel>

1 个答案:

答案 0 :(得分:1)

这是一个已知问题,您可能需要在窗口上设置显式样式。

在应用程序资源中定义样式,或者使用资源字典

合并样式

例如

<Style x:Key="myWindowStyle" TargetType="{x:Type Window}" >
    <Setter Property="FontFamily" Value="Arial Black"/>
</Style>

使用与

相同的内容
<Window Style="{StaticResource myWindowStyle}" ... />

如果你只想统一应用中的字体,那么也许可以使用TextElement.FontFamily

样品

<Window TextElement.FontFamily="Arial Black" ... />

这将帮助您在所有子元素上应用相同的字体,除非明确指定。