FrameworkElement.FindResource(Object) メソッド
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定したキーを持つリソースを検索します。要求したリソースが見つからない場合は例外がスローされます。
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
- resourceKey
- Object
要求したリソースのキー識別子。
要求されたリソース。 指定したキーを持つリソースが見つからなかった場合は例外がスローされます。 その場合は UnsetValue 値が返されることもあります。
resourceKey
が見つからず、UnhandledException イベントのイベント ハンドラーが存在しません。
- または -
resourceKey
が見つからず、Handled イベントで UnhandledException プロパティが false
です。
resourceKey
が null
です。
次の例では、名前付きリソースを取得し、適切な型にキャストしてプロパティを塗りつぶします。
void SetBGByResource(object sender, RoutedEventArgs e)
{
Button b = sender as Button;
b.Background = (Brush)this.FindResource("RainbowBrush");
}
Private Sub SetBGByResource(ByVal sender As Object, ByVal e As RoutedEventArgs)
Dim b As Button = TryCast(sender, Button)
b.Background = CType(Me.FindResource("RainbowBrush"), Brush)
End Sub
重要
見つからないキーに対してこのメソッドを呼び出すと、例外がスローされます。 を呼び出した結果の例外を処理しない場合は、代わりに を呼び出 FindResourceします TryFindResource 。
TryFindResource は、 null
要求されたリソースが見つからないときに を返し、例外をスローしません。
呼び出し元の要素でリソースが見つからない場合は、論理ツリー内の親要素が次に検索され、次にアプリケーション、テーマ、最後にシステム リソースが検索されます。 このルックアップ手法は、マークアップ内の動的リソース参照によってリソースが要求された場合にツリーを検索する方法と同じです。 リソース参照の詳細については、「 XAML リソース」を参照してください。
通常は、戻り値を FindResource 、返されたリソース値で設定したプロパティの型にすぐにキャストします。
リソース キーは必ずしも文字列ではありません。 たとえば、テーマ レベルのコントロールのスタイルは意図的に コントロールの に Type キー設定され、コントロールのアプリケーションまたはページ スタイルでは通常、この同じキー規則が使用されます。 詳細については、「 スタイル設定とテンプレート」 または 「XAML リソース」を参照してください。
製品 | バージョン |
---|---|
.NET Framework | 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
Windows Desktop | 3.0, 3.1, 5, 6, 7, 8, 9, 10 |
.NET に関するフィードバック
.NET はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。