FrameworkContentElement.TryFindResource(Object) 메서드


지정된 키를 사용하여 리소스를 검색하고 해당 리소스를 반환합니다(있는 경우).Searches for a resource with the specified key, and returns that resource if found.

 System::Object ^ TryFindResource(System::Object ^ resourceKey);
public object TryFindResource (object resourceKey);
member this.TryFindResource : obj -> obj
Public Function TryFindResource (resourceKey As Object) As Object

매개 변수


찾을 리소스의 키 식별자입니다.Key identifier of the resource to be found.


찾은 리소스입니다.The found resource. 리소스가 없으면 null 이 반환됩니다.If no resource was found, null is returned.


다음 예제에서는 태그에 정의 된 대로 리소스를 찾습니다 및 라우트된 이벤트에 대 한 응답에 있는 요소의 특정 속성에 적용 합니다.The following example finds a resource as defined in markup and applies it to a certain property of an element in response to a routed event.

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


리소스를 호출 하는 요소에 없는 경우 부모 트리를 검색 하는 논리적 트리를 사용 하 여 트리는 동일한 방식에서 런타임에 키로 동적 리소스 참조를 요청 하는 경우를 검색 합니다.If the resource is not found on the calling element, the parent tree is searched using the logical tree, in the same way that the tree would be searched if a dynamic resource reference were requested by key at run-time.

일반적으로 즉시 캐스팅 반환 되는 리소스 값으로 설정 하 려 했던는 속성의 형식으로 반환 합니다.Typically you would immediately cast the return value to the type of the property that you were attempting to set with the returned resource value.

제공 된 키를 사용 하 여 리소스를 찾을 수 없는 경우 예외를 throw 한다는 점을 제외 하면 FindResource 메서드의 동작은 비슷합니다.The FindResource method has similar behavior, except that it will throw an exception in the case of not finding a resource with the provided key.

적용 대상

추가 정보