첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
유용한 소스 코드가 있으면 icodebroker@naver.com으로 보내주시면 감사합니다.
블로그 자료는 자유롭게 사용하세요.

■ VisualTreeHelper 클래스 : Visual 객체 찾기

----------------------------------------------------------------------------------------------------

 

using System.Windows;

using System.Windows.Media;

 

#region Visual 객체 찾기 - FindVisualObject<T>(visualDependencyObject)

 

/// <summary>

/// Visual 객체 찾기

/// </summary>

/// <typeparam name="T">Visual 타입</typeparam>

/// <param name="visualDependencyObject">Visual DependencyObject 객체</param>

/// <returns>Visual 객체</returns>

public TVisual FindVisualObject<TVisual>(DependencyObject visualDependencyObject) where TVisual : class

{

    if(visualDependencyObject is TVisual)

    {

        return visualDependencyObject as TVisual;

    }

 

    for(int i = 0; i < VisualTreeHelper.GetChildrenCount(visualDependencyObject); i++)

    {

        TVisual childVisualDependencyObject =

            FindVisualObject<TVisual>(VisualTreeHelper.GetChild(visualDependencyObject, i));

 

        if(childVisualDependencyObject != null)

        {

            return childVisualDependencyObject;

        }

    }

 

    return null;

}

 

#endregion

 

----------------------------------------------------------------------------------------------------

Posted by 사용자 icodebroker
TAG

댓글을 달아 주세요