FrameworkElement.TryFindResource(Object) メソッド

定義

指定されたキーを使用してリソースを検索し、見つかった場合はそのリソースを返します。

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

パラメーター

resourceKey
Object

検索するリソースのキー識別子。

戻り値

Object

見つかったリソース。指定した key のリソースが見つからない場合は null

次の例は、ボタンハンドラーとして実装されています。ボタンをクリックすると、その背景が、を呼び出すことによって取得されるリソース定義のブラシに設定され TryFindResource ます。 これにより、要素ツリーが検索され、リソースが検索されます (リソース自体は XAML で定義されており、表示されません)。

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

注釈

リソースが呼び出し元の要素で見つからない場合は、実行時にキーによってリソースが要求された場合にツリーが検索されるのと同じ方法で、親リソースツリーが上方向に検索されます。 メソッドは、 null が呼び出された時点のツリーの既存の条件に従って、リソースツリー内の任意の場所にそのキーのリソースが存在しない場合にのみ、を返し TryFindResource ます。

通常は、返されたリソース値を使用して設定しようとしていたプロパティの型に戻り値を直ちにキャストします。

FindResourceメソッドの動作は似ていますが、指定されたキーを持つリソースが返されなかった場合に例外がスローされる点が異なります。

適用対象

こちらもご覧ください