FrameworkElement.FindResource(Object) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Sucht eine Ressource mit dem angegebenen Schlüssel und löst eine Ausnahme aus, wenn die angeforderte Ressource nicht gefunden wird.
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 Schlüsselbezeichner für die angeforderte Ressource.
Gibt zurück
Die angeforderte Ressource. Wenn keine Ressource mit dem angegebenen Schlüssel gefunden wurde, wird eine Ausnahme ausgelöst. Bei einer Ausnahme kann auch ein UnsetValue-Wert zurückgegeben werden.
Ausnahmen
resourceKey
wurde nicht gefunden, und ein Ereignishandler ist für das UnhandledException-Ereignis nicht vorhanden.
- oder -
resourceKey
wurde nicht gefunden und die Handled-Eigenschaft lautet false
im UnhandledException-Ereignis.
resourceKey
ist null
.
Beispiele
Im folgenden Beispiel wird eine benannte Ressource abgerufen und in einen entsprechenden Typ umgewandelt, um eine Eigenschaft zu füllen.
void SetBGByResource(object sender, RoutedEventArgs e)
{
Button b = sender as Button;
b.Background = (Brush)this.FindResource("RainbowBrush");
}
Private Sub SetBGByResource(ByVal sender As Object, ByVal e As RoutedEventArgs)
Dim b As Button = TryCast(sender, Button)
b.Background = CType(Me.FindResource("RainbowBrush"), Brush)
End Sub
Hinweise
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 Aufruf FindResourceergeben, rufen Sie stattdessen auf TryFindResource .
TryFindResource gibt zurück null
, wenn eine angeforderte Ressource nicht gefunden werden kann, und löst keine Ausnahme aus.
Wenn die Ressource nicht im aufrufenden Element gefunden wird, wird als Nächstes das übergeordnete Element in der logischen Struktur, dann die Anwendung, dann die Designs und schließlich die Systemressourcen durchsucht. Diese Nachschlagemethodik ist identisch mit der Suche nach der Struktur, wenn eine Ressource von einem dynamischen Ressourcenverweis im Markup angefordert wurde. Weitere Informationen zur Ressourcensuche finden Sie unter XAML-Ressourcen.
In der Regel wandeln Sie sofort einen FindResource Rückgabewert in den Typ der Eigenschaft um, die Sie mit dem zurückgegebenen Ressourcenwert festlegen.
Ressourcenschlüssel sind nicht unbedingt Zeichenfolgen. Für instance werden Stile für Steuerelemente auf Designebene bewusst auf die Type des Steuerelements festgelegt, und Anwendungs- oder Seitenformate für Steuerelemente verwenden in der Regel dieselbe Schlüsselkonvention. Ausführliche Informationen finden Sie unter Formatieren und Vorlagen oder XAML-Ressourcen.