如何:在代码中检索资源

[本文档仅供预览,在以后的发行版中可能会发生更改。包含的空白主题用作占位符。]

可以在代码中访问和使用嵌入在 XAML 标记中的逻辑资源。 每个 Windows Presentation Foundation (WPF) 控件都在一个名为 Resources 的集合中公开其资源,同时公开一个名为 FindResource 的方法,该方法可用来检索对单个资源的引用。 您可以通过使用 FindResource 方法或直接访问 Resources 集合来检索资源。

使用 FindResource 方法访问代码中的资源

  • 使用 FindResource 方法来获取对已命名资源的引用,该资源是为控件或窗口在 XAML 标记中定义的。 下面的示例演示如何获取对名为 myBrush 的 SolidColorBrush(它在当前窗口中被定义为资源)的引用。

    Dim aBrush As SolidColorBrush
    aBrush = CType(Me.FindResource("myBrush"), SolidColorBrush)
    
    SolidColorBrush aBrush;
    aBrush = (SolidColorBrush)this.FindResource("myBrush");
    

    备注

    如果无法找到资源,FindResource 将引发异常。您可以通过改用 TryFindResource 方法来避免在找不到资源时引发异常,如果找不到资源,该方法会返回一个 null 值。

使用 Resources 集合访问代码中的资源

  • 使用资源的名称从 Resources 集合中检索该资源。 下面的示例演示如何获取对名为 myBrush 的 SolidColorBrush(它在当前窗口中被定义为资源)的引用。

    Dim aBrush As SolidColorBrush
    aBrush = CType(Me.Resources("myBrush"), SolidColorBrush)
    
    SolidColorBrush aBrush;
    aBrush = (SolidColorBrush)this.Resources["myBrush"];
    

请参见

概念

XAML 资源

资源和代码

其他资源

How to: Get and Set Application-Scope Resources

使用资源