FrameworkElement.TryFindResource(Object) FrameworkElement.TryFindResource(Object) FrameworkElement.TryFindResource(Object) FrameworkElement.TryFindResource(Object) Method

Definizione

Cerca una risorsa con la chiave specificata e restituisce tale risorsa, se trovata.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

Parametri

resourceKey
Object Object Object Object

Identificatore di chiave della risorsa da trovare.The key identifier of the resource to be found.

Restituisce

Risorsa trovata oppure null se non viene trovata una risorsa con il parametro key specificato.The found resource, or null if no resource with the provided key is found.

Esempi

Nell'esempio seguente viene implementato come un gestore di pulsanti, in cui il pulsante selezionato imposta lo sfondo su un pennello definito dalla risorsa ottenuto chiamando TryFindResource su se stesso.The 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. In questo modo l'albero degli elementi viene individuato e viene trovata la risorsa ( XAMLXAML la risorsa stessa è definita in e non viene visualizzata).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

Commenti

Se la risorsa non viene trovata nell'elemento chiamante, l'albero delle risorse padre viene ricercato verso l'alto nell'albero logico, nello stesso modo in cui viene eseguita la ricerca dell'albero se una risorsa è stata richiesta da Key in fase di esecuzione.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. Il metodo restituisce null solo se nessuna risorsa della chiave esisteva in un punto qualsiasi dell'albero delle risorse, in base alle condizioni esistenti dell'albero al TryFindResource momento della chiamata.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 genere, è necessario eseguire immediatamente il cast del valore restituito al tipo della proprietà che si sta tentando di impostare con il valore della risorsa restituita.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.

Il FindResource metodo ha un comportamento simile, ad eccezione del fatto che genera un'eccezione se non viene restituita alcuna risorsa con la chiave fornita.The FindResource method has similar behavior, except that it throws an exception if no resource with the provided key was returned.

Si applica a

Vedi anche