Application.FindResource(Object) Methode

Definition

Sucht mit dem angegebenen Schlüssel nach einer Benutzeroberflächenressource (User Interface, UI), z. B. einer Style oder Brush, und löst eine Ausnahme aus, wenn die angeforderte Ressource nicht gefunden wird (siehe XAML-Ressourcen).

public:
 System::Object ^ FindResource(System::Object ^ resourceKey);
public object FindResource (object resourceKey);
member this.FindResource : obj -> obj
Public Function FindResource (resourceKey As Object) As Object

Parameter

resourceKey
Object

Der Name der zu suchenden Ressource.

Gibt zurück

Das angeforderte Ressourcenobjekt. Wenn die angeforderte Ressource nicht gefunden werden kann, wird eine ResourceReferenceKeyNotFoundException ausgelöst.

Ausnahmen

Die Ressource wurde nicht gefunden.

Beispiele

Im folgenden Beispiel wird gezeigt, wie sie verwenden FindResource , um eine Ressource zu finden und zu behandeln ResourceReferenceKeyNotFoundException , wenn die Ressource nicht gefunden wird.

void findResourceButton_Click(object sender, RoutedEventArgs e) {
  try {
    object resource = Application.Current.FindResource("UnfindableResource");
  }
  catch (ResourceReferenceKeyNotFoundException ex) {
    MessageBox.Show("Resource not found.");
  }
}
Private Sub findResourceButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
  Try
    Dim resource As Object = Application.Current.FindResource("UnfindableResource")
  Catch ex As ResourceReferenceKeyNotFoundException
    MessageBox.Show("Resource not found.")
  End Try
End Sub

Hinweise

FindResource sucht zunächst in Anwendungsbereichsressourcen nach der angegebenen Ressource. Anwendungsbereichsressourcen werden von Applicationverwaltet und über die Resources -Eigenschaft verfügbar gemacht. Wenn die angegebene Ressource nicht in der Gruppe der Anwendungsbereichsressourcen gefunden wird, FindResource durchsucht das nächste Mal die Systemressourcen. Systemressourcen sind vom Benutzer definierte Shellressourcen und umfassen Farben, Schriftarten und Shellkonfigurationen. Diese werden von den SystemColorsTypen , SystemFontsund SystemParameters jeweils als statische Eigenschaften verfügbar gemacht. Um sie zu erwerben FindResource , machen diese Typen auch Ressourcenschlüsseleigenschaften verfügbar, die so konzipiert sind, dass sie an FindResourceübergeben werden, z. B IconWidthKey. .

Da FindResource ein -Objekt zurückgegeben wird, müssen Sie den zurückgegebenen Wert in den entsprechenden Typ umwandeln, wenn die Ressource gefunden wird.

Wichtig

Wenn Sie diese Methode für einen Schlüssel aufrufen, der nicht gefunden werden kann, wird eine Ausnahme ausgelöst. Wenn Sie keine Ausnahmen behandeln möchten, die sich aus dem Aufrufen FindResourceergeben, rufen TryFindResource Sie stattdessen auf; TryFindResource gibt einen null Verweis zurück, wenn eine angeforderte Ressource nicht gefunden werden kann, und löst keine Ausnahme aus.

Diese Methode ist threadsicher und kann von jedem Thread aufgerufen werden.

Gilt für:

Weitere Informationen