FrameworkElement.TryFindResource(Object) 메서드

정의

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

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

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

반환

찾은 리소스이거나, 제공된 key에 리소스가 없으면 null입니다.The found resource, or null if no resource with the provided key is found.

예제

다음 예제는 단추 처리기로 구현 됩니다. 클릭 하는 단추는 자체에서 TryFindResource를 호출 하 여 가져온 리소스 정의 브러시로 배경을 설정 합니다.The following example is implemented as a button handler, where the button being clicked sets its background to a resource-defined brush obtained by calling TryFindResource on itself. 이는 요소 트리를 안내 하 고 리소스를 찾습니다. 리소스 자체는 XAMLXAML에 정의 되 고 표시 되지 않습니다.This walks the element tree and finds the resource (the resource itself is defined in XAMLXAML and is not shown).

void TryFind(object sender, RoutedEventArgs e)  {
    Button b = e.Source as Button;
    b.Background = (Brush)b.TryFindResource("customBrush");
}    
Private Sub TryFind(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim b As Button = TryCast(e.Source, Button)
    b.Background = CType(b.TryFindResource("customBrush"), Brush)
End Sub

설명

호출 하는 요소에서 리소스를 찾을 수 없는 경우 런타임에 키로 리소스를 요청 하는 경우 트리를 검색 하는 것과 동일한 방식으로 부모 리소스 트리가 논리적 트리를 통해 위쪽으로 검색 됩니다.If the resource is not found on the calling element, the parent resource tree is searched upward through the logical tree, in the same way that the tree would be searched if a resource were requested by key at run time. 메서드는 TryFindResource가 호출 될 때 트리의 기존 조건에 따라 리소스 트리의 어디에도 해당 키의 리소스가 없는 경우에만 null을 반환 합니다.The method returns null only if no resource of that key existed anywhere in the resource tree, per the existing conditions of the tree at the time that TryFindResource is called.

일반적으로 반환 값을 반환 된 리소스 값을 사용 하 여 설정 하려는 속성의 형식으로 즉시 캐스팅 합니다.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 throws an exception if no resource with the provided key was returned.

적용 대상

추가 정보