FrameworkElement.TryFindResource(Object) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定したキーを持つリソースを検索し、見つかった場合はそのリソースを返します。
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
見つかるリソースのキー識別子。
返品
見つかったリソース。指定されたresourceKeyを持つリソースが見つからない場合は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
注釈
呼び出し元の要素でリソースが見つからない場合は、実行時にリソースがキーによって要求された場合にツリーが検索されるのと同じ方法で、親リソース ツリーが論理ツリーを介して上方向に検索されます。 このメソッドは、TryFindResourceが呼び出された時点のツリーの既存の条件に従って、そのキーのリソースがリソース ツリー内のどこにも存在しなかった場合にのみ、nullを返します。
通常は、戻り値を、返されたリソース値で設定しようとしたプロパティの型にすぐにキャストします。
FindResource メソッドの動作は似ていますが、指定されたキーを持つリソースが返されなかった場合に例外がスローされる点が異なります。