FrameworkContentElement.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
要找到的资源的密钥标识符。
返回
找到的资源。 如果未找到任何资源, null 则返回。
示例
以下示例查找标记中定义的资源,并将其应用于元素的特定属性,以响应路由事件。
void SetBGByResourceTry(object sender, RoutedEventArgs e)
{
Block b = sender as Block;
b.Background = (Brush)this.TryFindResource("RainbowBrush");
}
Private Sub SetBGByResourceTry(ByVal sender As Object, ByVal e As RoutedEventArgs)
Dim b As Block = TryCast(sender, Block)
b.Background = CType(Me.TryFindResource("RainbowBrush"), Brush)
End Sub
注解
如果在调用元素上找不到资源,则使用逻辑树搜索父树,就像在运行时通过键请求动态资源引用时搜索树一样。
通常,你会立即将返回值强制转换为尝试使用返回的资源值设置的属性的类型。
该方法 FindResource 具有类似的行为,只是在未找到具有提供的键的资源时,它将引发异常。