Поделиться через


Практическое руководство. Использование SystemFonts

Обновлен: Ноябрь 2007

В этом примере показан способ использования статических ресурсов классаSystemFonts для изменения стиля или настроек кнопки.

Пример

Системные ресурсы предоставляют несколько определяемых системой значений в качестве ресурсов и свойств. Это облегчает создание графических параметров, которые согласованы с параметрами системы. SystemFonts представляет собой класс, содержащий значения шрифта системы в качестве статических свойств, а также свойства, ссылающиеся на ключи ресурсов, которые могут быть использованы для динамического доступа к этим значениям во время выполнения. Например, CaptionFontFamily является значением SystemFonts, а CaptionFontFamilyKey является ключом соответствующего ресурса.

В XAML можно использовать члены SystemFonts как статические свойства или ссылки динамического ресурса (со статическим значением свойства в качестве ключа). Используйте динамическую ссылку на ресурс, если метрика шрифта должна автоматически обновляться во время выполнения приложения; в противном случае используйте ссылку на статическое значение.

ms745075.alert_note(ru-ru,VS.90).gifПримечание.

К именам свойств, используемых в качестве ключей ресурсов, добавляется суффикс «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)