Udostępnij za pośrednictwem


Application.FindResource(Object) Metoda

Definicja

Wyszukuje zasób interfejsu użytkownika, taki jak lub StyleBrush, z określonym kluczem i zgłasza wyjątek, jeśli żądany zasób nie zostanie znaleziony (zobacz Zasoby XAML).

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

Parametry

resourceKey
Object

Nazwa zasobu do znalezienia.

Zwraca

Żądany obiekt zasobu. Jeśli żądany zasób nie zostanie znaleziony, ResourceReferenceKeyNotFoundException zostanie zwrócony błąd .

Wyjątki

Nie można odnaleźć zasobu.

Przykłady

W poniższym przykładzie pokazano, jak użyć FindResource polecenia w celu znalezienia zasobu i obsługi ResourceReferenceKeyNotFoundException , jeśli zasób nie zostanie znaleziony.

void findResourceButton_Click(object sender, RoutedEventArgs e) {
  try {
    object resource = Application.Current.FindResource("UnfindableResource");
  }
  catch (ResourceReferenceKeyNotFoundException ex) {
    MessageBox.Show("Resource not found.");
  }
}
Private Sub findResourceButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
  Try
    Dim resource As Object = Application.Current.FindResource("UnfindableResource")
  Catch ex As ResourceReferenceKeyNotFoundException
    MessageBox.Show("Resource not found.")
  End Try
End Sub

Uwagi

FindResource Funkcja najpierw będzie szukać zasobów zakresu aplikacji dla określonego zasobu. Zasoby zakresu aplikacji są zarządzane przez Applicationusługę i są udostępniane z Resources właściwości . Jeśli określony zasób nie zostanie znaleziony w zestawie zasobów zakresu aplikacji, FindResource następnie przeszukuje zasoby systemowe. Zasoby systemowe to zasoby powłoki zdefiniowane przez użytkownika i obejmują kolory, czcionki i konfiguracje powłoki. Są one widoczne odpowiednio z SystemColorstypów , SystemFontsi SystemParameters jako właściwości statycznych. Aby użyć FindResource ich do ich uzyskania, te typy uwidaczniają również właściwości klucza zasobu, które mają zostać przekazane do FindResource; na przykład IconWidthKey.

Ponieważ FindResource zwraca obiekt, należy rzutować zwróconą wartość do odpowiedniego typu, jeśli zasób zostanie znaleziony.

Ważne

Jeśli wywołasz tę metodę dla klucza, którego nie można odnaleźć, zostanie zgłoszony wyjątek. Jeśli nie chcesz obsługiwać wyjątków wynikających z wywołania FindResourcemetody , wywołaj TryFindResource zamiast tego TryFindResource zwraca null odwołanie, gdy nie można odnaleźć żądanego zasobu i nie zgłasza wyjątku.

Ta metoda jest bezpieczna wątkiem i może być wywoływana z dowolnego wątku.

Dotyczy

Zobacz też