方法 : SystemFonts を使用する
更新 : 2007 年 11 月
この例では、ボタンをスタイル設定またはカスタマイズするために SystemFonts クラスの静的リソースを使用する方法を示します。
使用例
システム設定と一貫性のあるビジュアルを作成できるようにするために、システム リソースは、システムで決定されるいくつかの値をリソースとプロパティの両方として公開します。SystemFonts は、静的プロパティであるシステム フォント値と、それらの値に実行時に動的にアクセスするために使用できるリソース キーを参照するプロパティの両方を含むクラスです。たとえば、CaptionFontFamily は SystemFonts 値であり、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);