다음을 통해 공유


VisualTreeHelper.GetChildrenCount(DependencyObject) 메서드

정의

시각적 트리에서 개체의 자식 컬렉션에 있는 자식 수를 반환합니다.

public:
 static int GetChildrenCount(DependencyObject ^ reference);
 static int GetChildrenCount(DependencyObject const& reference);
public static int GetChildrenCount(DependencyObject reference);
function getChildrenCount(reference)
Public Shared Function GetChildrenCount (reference As DependencyObject) As Integer

매개 변수

reference
DependencyObject

원본 시각적 개체입니다.

반환

Int32

int

제공된 원본 시각적 개체의 시각적 개체 자식 수입니다.

예제

다음은 시각적 트리 내에서 특정 형식의 자식 요소 목록을 복사할 수 있는 유틸리티 함수의 예입니다. 기본 통과 메서드 GetChildrenCount 및 GetChild를 사용합니다. 재귀를 사용하여 중간 컨테이너 내에 있는 중첩 수준에 관계없이 요소를 찾을 수 있습니다. 또한 형식 비교를 확장하는 System.ReflectionIsSubclassOf 확장 메서드를 사용하여 하위 형식을 Type에 대한 일치 항목으로 간주합니다.

internal static void FindChildren<T>(List<T> results, DependencyObject startNode)
  where T : DependencyObject
{
    int count = VisualTreeHelper.GetChildrenCount(startNode);
    for (int i = 0; i < count; i++)
    {
        DependencyObject current = VisualTreeHelper.GetChild(startNode, i);
        if ((current.GetType()).Equals(typeof(T)) || (current.GetType().GetTypeInfo().IsSubclassOf(typeof(T))))
        {
            T asType = (T)current;
            results.Add(asType);
        }
        FindChildren<T>(results, current);
    }
}

적용 대상