FrameworkContentElement.FindResource(Object) 方法

定义

搜索具有指定键的资源,如果未找到请求的资源,则会引发异常。

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

要找到的资源的密钥标识符。

返回

找到的资源,或者 null 如果未找到匹配的资源(但如果找不到匹配资源,也会引发异常 null)。

例外

找不到请求的资源密钥。

resourceKeynull

示例

以下示例查找标记中定义的资源,并将其应用于元素的特定属性,以响应路由事件。

void SetBGByResource(object sender, RoutedEventArgs e)
{
    Block b = sender as Block;
    b.Background = (Brush)this.FindResource("RainbowBrush");
}
Private Sub SetBGByResource(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim b As Block = TryCast(sender, Block)
    b.Background = CType(Me.FindResource("RainbowBrush"), Brush)
End Sub

注解

Important

如果为找不到的键调用此方法,则会引发异常。 如果不想处理此情况的异常,则应改为调用 TryFindResourceTryFindResource null如果未找到任何资源,并且不引发异常,则返回。

如果在调用元素上找不到资源,则使用逻辑树搜索父树,就像在运行时通过键请求资源时搜索树一样。

通常,你会立即将返回值强制转换为尝试使用返回的资源值设置的属性的类型。

适用于