Gewusst wie: Verwenden von SystemFonts

Aktualisiert: November 2007

In diesem Beispiel wird die Verwendung der statischen Ressourcen der SystemFonts-Klasse zum Formatieren oder Anpassen einer Schaltfläche veranschaulicht.

Beispiel

Systemressourcen machen mehrere vom System festgelegte Werte als Ressourcen und Eigenschaften verfügbar, damit Sie visuelle Objekte erstellen können, die den Systemeinstellungen entsprechen. SystemFonts ist eine Klasse, die sowohl Systemschriftartwerte als statische Eigenschaften als auch Eigenschaften enthält, die auf Ressourcenschlüssel verweisen. Diese Ressourcenschlüssel können zur Laufzeit für den dynamischen Zugriff auf diese Werte verwendet werden. Beispielsweise ist CaptionFontFamily ein SystemFonts-Wert und CaptionFontFamilyKey ein entsprechender Ressourcenschlüssel.

In XAML können Sie die Member von SystemFonts entweder als statische Eigenschaften oder als dynamische Ressourcenverweise verwenden (wobei der statische Eigenschaftswert als Schlüssel dient). Verwenden Sie einen dynamischen Ressourcenverweis, wenn die Schriftartmetrik beim Ausführen der Anwendung automatisch aktualisiert werden soll. Verwenden Sie andernfalls einen statischen Wertverweis.

Tipp

Bei Ressourcenschlüsseln wird das Suffix "Key" an den Eigenschaftennamen gehängt.

Das folgende Beispiel veranschaulicht den Zugriff auf und die Verwendung der Eigenschaften von SystemFonts als statische Werte zum Formatieren oder Anpassen einer Schaltfläche. In diesem Markupbeispiel werden einer Schaltfläche SystemFonts-Werte zugewiesen.

<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>

Um die Werte von SystemFonts im Code verwenden zu können, ist es nicht erforderlich, einen statischen Wert oder dynamischen Ressourcenverweis zu verwenden. Verwenden Sie stattdessen die Nicht-Schlüsseleigenschaften der SystemFonts-Klasse. Obwohl die Nicht-Schlüsseleigenschaften anscheinend als statische Eigenschaften definiert sind, gilt für das Laufzeitverhalten des vom System gehosteten WPF, dass die Eigenschaften in Echtzeit neu ausgewertet und vom Benutzer ausgelöste Änderungen an Systemwerten entsprechend berücksichtigt werden. Das folgende Beispiel veranschaulicht, wie die Schriftarteinstellungen einer Schaltfläche angegeben werden.

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);

Siehe auch

Aufgaben

Gewusst wie: Zeichnen eines Bereichs mit einem Systempinsel

Gewusst wie: Verwenden von SystemParameters

Gewusst wie: Verwenden von Systemschriftartschlüsseln

Konzepte

Übersicht über Ressourcen

Referenz

SystemFonts

x:Statische Markuperweiterung

DynamicResource-Markuperweiterung

Weitere Ressourcen

Gewusst-wie-Themen zu Ressourcen

Ressourcenbeispiele (WPF)