如何:使用 SystemFonts

更新:2007 年 11 月

此示例演示如何使用 SystemFonts 类的静态资源来设置按钮样式或自定义按钮。

示例

系统资源将多个系统确定值作为资源和属性进行显示,以帮助您创建与系统设置一致的视觉效果。SystemFonts 是一个类,其中既包含作为静态属性的系统字体值,又包含引用可用于在运行时动态访问这些值的资源键的属性。例如,CaptionFontFamilySystemFonts 值,CaptionFontFamilyKey 是相应的资源键。

在 XAML 中,可以使用 SystemFonts 的成员作为静态属性或动态资源引用(静态属性值为资源键)。如果您希望字体规格在应用程序运行时自动更新,请使用动态资源引用;否则,请使用静态值引用。

说明:

资源键的属性名称后面附有“Key”后缀。

下面的示例演示如何访问和使用作为静态值的 SystemFonts 的属性以设置按钮样式或自定义按钮。此标记示例会将 SystemFonts 值分配给按钮。

<Button Margin="10, 10, 5, 5" Grid.Column="0" Grid.Row="3"      
     FontSize="{x:Static SystemFonts.IconFontSize}"
     FontWeight="{x:Static SystemFonts.MessageFontWeight}"
     FontFamily="{x:Static SystemFonts.CaptionFontFamily}">
     SystemFonts
</Button>

若要在代码中使用 SystemFonts 的值,不一定要使用静态值或动态资源引用,而可以改用 SystemFonts 类的非键属性。尽管非键属性已明确定义为静态属性,但是系统承载的 WPF 的运行时行为将会实时重新评估这些属性,并且会正确考虑对系统值所进行的面向用户的更改。下面的示例演示如何指定按钮的字体设置。

Button btncsharp = new Button();
btncsharp.Content = "SystemFonts";
btncsharp.Background = SystemColors.ControlDarkDarkBrush;
btncsharp.FontSize = SystemFonts.IconFontSize;
btncsharp.FontWeight = SystemFonts.MessageFontWeight;
btncsharp.FontFamily = SystemFonts.CaptionFontFamily;
cv1.Children.Add(btncsharp);

请参见

任务

如何:使用系统画笔绘制区域

如何:使用 SystemParameters

如何:使用系统字体键

概念

资源概述

参考

SystemFonts

x:Static 标记扩展

DynamicResource 标记扩展

其他资源

资源帮助主题

资源示例 (WPF)