FrameworkElement.TryFindResource(Object) Methode

Definition

Sucht nach einer Ressource mit dem angegebenen Schlüssel und gibt diese Ressource zurück, sofern sie gefunden wurde.Searches for a resource with the specified key, and returns that resource if found.

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

Parameter

resourceKey
Object

Der Schlüsselbezeichner der gesuchten Ressource.The key identifier of the resource to be found.

Gibt zurück

Die gefundene Ressource oder null, wenn keine Ressource mit dem angegebenen key gefunden wurde.The found resource, or null if no resource with the provided key is found.

Beispiele

Das folgende Beispiel wird als Schaltflächen Handler implementiert, bei dem durch Klicken auf die Schaltfläche, auf die geklickt wird, der Hintergrund auf einen Ressourcen definierten Pinsel festgelegt wird, der durch den Aufruf von TryFindResourceThe following example is implemented as a button handler, where the button being clicked sets its background to a resource-defined brush obtained by calling TryFindResource on itself. Dadurch wird die-Elementstruktur durchlaufen und die Ressource gefunden (die Ressource selbst ist in XAMLXAML definiert und wird nicht angezeigt).This walks the element tree and finds the resource (the resource itself is defined in XAMLXAML and is not shown).

void TryFind(object sender, RoutedEventArgs e)  {
    Button b = e.Source as Button;
    b.Background = (Brush)b.TryFindResource("customBrush");
}    
Private Sub TryFind(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim b As Button = TryCast(e.Source, Button)
    b.Background = CType(b.TryFindResource("customBrush"), Brush)
End Sub

Hinweise

Wenn die Ressource im aufrufenden Element nicht gefunden wird, wird die übergeordnete Ressourcenstruktur durch die logische Struktur nach oben durchsucht, und zwar auf dieselbe Weise, wie die Struktur durchsucht wird, wenn eine Ressource zur Laufzeit von einem Schlüssel angefordert wurde.If the resource is not found on the calling element, the parent resource tree is searched upward through the logical tree, in the same way that the tree would be searched if a resource were requested by key at run time. Die Methode gibt null nur dann zurück, wenn keine Ressource dieses Schlüssels an einer beliebigen Stelle in der Ressourcenstruktur vorhanden war, und zwar gemäß den vorhandenen Bedingungen der Struktur zum Zeitpunkt, an dem TryFindResource aufgerufen wird.The method returns null only if no resource of that key existed anywhere in the resource tree, per the existing conditions of the tree at the time that TryFindResource is called.

In der Regel würden Sie den Rückgabewert sofort in den Typ der Eigenschaft umwandeln, die Sie mit dem zurückgegebenen Ressourcen Wert festlegen wollten.Typically you would immediately cast the return value to the type of the property that you were attempting to set with the returned resource value.

Die FindResource-Methode weist ein ähnliches Verhalten auf, mit der Ausnahme, dass eine Ausnahme ausgelöst wird, wenn keine Ressource mit dem angegebenen Schlüssel zurückgegeben wurde.The FindResource method has similar behavior, except that it throws an exception if no resource with the provided key was returned.

Gilt für:

Siehe auch