FrameworkElement.TryFindResource(Object) Metoda

Definicja

Wyszukuje zasób z określonym kluczem i zwraca ten zasób, jeśli został znaleziony.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

Parametry

resourceKey
Object

Identyfikator klucza zasobu, który ma zostać znaleziony.The key identifier of the resource to be found.

Zwraca

Object

Znaleziono zasób lub null Jeśli nie zostanie znaleziony żaden zasób z podanym key .The found resource, or null if no resource with the provided key is found.

Przykłady

Poniższy przykład jest zaimplementowany jako procedura obsługi przycisku, gdzie kliknięty przycisk ustawia jego tło na pędzel zdefiniowany przez metodę, który jest wywoływany przez wywołanie TryFindResource .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. Spowoduje to przeprowadzenie drzewa elementów i znalezienie zasobu (sam zasób jest zdefiniowany w języku XAML i nie jest wyświetlany).This walks the element tree and finds the resource (the resource itself is defined in XAML 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

Uwagi

Jeśli zasób nie zostanie znaleziony w elemencie wywołującym, drzewo zasobów nadrzędnych zostanie przeszukane w górę drzewa logicznego w taki sam sposób, w jaki drzewo będzie przeszukiwane, jeśli zasób zażądał klucza w czasie wykonywania.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. Metoda zwraca null tylko wtedy, gdy żaden zasób tego klucza nie istniał w dowolnym miejscu w drzewie zasobów, na istniejące warunki drzewa w czasie, który TryFindResource jest wywoływany.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.

Zazwyczaj można natychmiast rzutować wartość zwracaną na typ właściwości, którą próbowano ustawić przy użyciu zwróconej wartości zasobu.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.

FindResourceMetoda ma podobne zachowanie, z tą różnicą, że zgłasza wyjątek, jeśli nie został zwrócony żaden zasób z podanym kluczem.The FindResource method has similar behavior, except that it throws an exception if no resource with the provided key was returned.

Dotyczy

Zobacz też