Gewusst wie: Abrufen von Ressourcen in Code
[Dieses Dokument dient lediglich Vorschauzwecken und kann in späteren Versionen geändert werden. Leere Themen sind als Platzhalter enthalten.]
Es ist möglich, auf logische Ressourcen, die in Ihrem XAML-Markup eingebettet sind, zuzugreifen und sie in Code zu verwenden. Jedes WPF-Steuerelement (Windows Presentation Foundation) stellt zum einen seine Ressourcen in einer Auflistung namens Resources zur Verfügung und zum anderen eine Methode mit dem Namen FindResource, die verwendet werden kann, um einen Verweis zu einer einzelnen Ressource abzurufen. Sie können Ressourcen abrufen, indem Sie die FindResource-Methode verwenden oder direkt auf die Resources-Auflistung zugreifen.
So greifen Sie auf Ressourcen in Code unter Verwendung der FindResource-Methode zu
Verwenden Sie die FindResource-Methode, um einen Verweis zu einer benannten Ressource abzurufen, die im XAML-Markup für das Steuerelement oder Fenster definiert ist. Das folgende Beispiel veranschaulicht, wie man einen Verweis zu einem SolidColorBrush erhält, der mit myBrush benannt ist und als eine Ressource im aktuellen Fenster definiert ist.
Dim aBrush As SolidColorBrush aBrush = CType(Me.FindResource("myBrush"), SolidColorBrush)
SolidColorBrush aBrush; aBrush = (SolidColorBrush)this.FindResource("myBrush");
Hinweis
Wenn eine Ressource nicht gefunden werden kann, löst FindResource eine Ausnahme aus.Sie können vermeiden, dass eine Laufzeitausnahme ausgelöst wird, wenn eine Ressource nicht gefunden werden kann, indem Sie stattdessen die TryFindResource-Methode verwenden, die einen null-Wert zurückgibt, wenn eine Ressource nicht gefunden werden kann.
So greifen Sie auf Ressourcen in Code unter Verwendung der Ressourcen Auflistung zu
Rufen Sie die Ressource mit dem Namen der Ressource aus der Resources-Auflistung ab. Das folgende Beispiel veranschaulicht, wie man einen Verweis zu einem SolidColorBrush erhält, der mit myBrush benannt ist und als eine Ressource im aktuellen Fenster definiert ist.
Dim aBrush As SolidColorBrush aBrush = CType(Me.Resources("myBrush"), SolidColorBrush)
SolidColorBrush aBrush; aBrush = (SolidColorBrush)this.Resources["myBrush"];