FrameworkElement.TryFindResource(Object) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wyszukuje zasób z określonym kluczem i zwraca ten zasób, jeśli zostanie znaleziony.
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.
Zwraca
Znaleziony zasób lub null
jeśli nie zostanie znaleziony żaden zasób z podanym key
zasobem.
Przykłady
Poniższy przykład jest implementowany jako procedura obsługi przycisków, gdzie kliknięty przycisk ustawia jego tło na szczotkę zdefiniowaną przez zasób uzyskany przez wywołanie TryFindResource samego siebie. Spowoduje to pokazanie drzewa elementów i znalezienie zasobu (sam zasób jest zdefiniowany w języku XAML i nie jest wyświetlany).
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 elemecie wywołującym, drzewo zasobów nadrzędnych jest przeszukiwane w górę przez drzewo logiczne, w taki sam sposób, w jaki drzewo zostanie przeszukane, jeśli zasób został żądany przez klucz w czasie wykonywania. Metoda zwraca wartość null
tylko wtedy, gdy żaden zasób tego klucza nie istniał w dowolnym miejscu w drzewie zasobów, zgodnie z istniejącymi warunkami drzewa w czasie TryFindResource wywoływanym.
Zazwyczaj zwracana wartość jest natychmiast rzutowana na typ właściwości, którą próbowano ustawić przy użyciu zwróconej wartości zasobu.
Metoda FindResource ma podobne zachowanie, z wyjątkiem tego, że zgłasza wyjątek, jeśli nie zostanie zwrócony żaden zasób z podanym kluczem.