FrameworkElement.GetVisualChild(Int32) FrameworkElement.GetVisualChild(Int32) FrameworkElement.GetVisualChild(Int32) FrameworkElement.GetVisualChild(Int32) Method

정의

GetVisualChild(Int32)를 재정의하며, 자식 요소 컬렉션에서 지정된 인덱스의 자식을 반환합니다.Overrides GetVisualChild(Int32), and returns a child at the specified index from a collection of child elements.

protected:
 override System::Windows::Media::Visual ^ GetVisualChild(int index);
protected override System.Windows.Media.Visual GetVisualChild (int index);
override this.GetVisualChild : int -> System.Windows.Media.Visual
Protected Overrides Function GetVisualChild (index As Integer) As Visual

매개 변수

index
Int32 Int32 Int32 Int32

컬렉션에서 요청된 자식 요소의 인덱스(0부터 시작)입니다.The zero-based index of the requested child element in the collection.

반환

요청된 자식 요소입니다.The requested child element. null을 반환하면 안 됩니다. 지정된 인덱스가 범위를 벗어난 경우 예외가 발생합니다.This should not return null; if the provided index is out of range, an exception is thrown.

예제

다음 예제에서는 사용자 지정 표시기에서 선언 된 값을 사용 하는 방법을 보여 줍니다는 VisualCollection 여러 시각적 자식에 대 한 유지 관리 합니다.The following example shows how a custom adorner uses the values declared by a VisualCollection that it maintains for its multiple visual children. 이러한 값의 재정의 통해 보고 됩니다 VisualChildrenCountGetVisualChild입니다.These values are reported through overrides of VisualChildrenCount and GetVisualChild.

// To store and manage the adorner's visual children.
VisualCollection visualChildren;
' To store and manage the adorner's visual children.
Private visualChildren As VisualCollection
// Override the VisualChildrenCount and GetVisualChild properties to interface with 
// the adorner's visual collection.
protected override int VisualChildrenCount { get { return visualChildren.Count; } }
protected override Visual GetVisualChild(int index) { return visualChildren[index]; }
' Override the VisualChildrenCount and GetVisualChild properties to interface with 
' the adorner's visual collection.
Protected Overrides ReadOnly Property VisualChildrenCount() As Integer
    Get
        Return visualChildren.Count
    End Get
End Property
Protected Overrides Function GetVisualChild(ByVal index As Integer) As Visual
    Return visualChildren(index)
End Function

설명

FrameworkElement 구현만 유효한 인덱스는 0입니다.In the FrameworkElement implementation, the only valid index is zero. 콘텐츠 모델에 GetVisualChild 0 개 이상의 자식 요소 컬렉션이 아닌를 지원 합니다.The content model for GetVisualChild supports either zero or one child elements, not a collection.

상속자 참고

이 구현 시각적 자식 요소의 설명이 포함 된 컬렉션을 유지 하지 않는 요소에만 유효 합니다.This implementation is only valid for elements that do not maintain any more descriptive collection of visual child elements. 이러한 컬렉션에 있는 모든 요소는이 메서드를 재정의 하 고 해당 요소에서 지원 되는 자식 요소 컬렉션에서 해당 인덱스에 인덱스를 매핑합니다 해야 합니다.Any element that does have such a collection must override this method and map the index to an equivalent index in the child element collection that is supported by that element. 범위는 0에서 인덱스 VisualChildrenCount (-1)는 유효한 요소를 반환 해야 다른 모든 인덱스는 범위를 벗어난 예외를 throw 해야 합니다.An index in the range from zero to VisualChildrenCount (minus one) should return a valid element; any other index should throw an out-of-range exception. 자식 컬렉션을에 지 및 재정의 된 요소 형식의 예로 GetVisualChild(Int32) 둘 이상의 가능한 자식 반환 하려면 Panel합니다.An example of an element type that does support a child collection and overrides GetVisualChild(Int32) to return more than one possible child is Panel.

기본 구현은 FrameworkElement visual 자식 노드가 한 개만 가정 합니다.The default implementation in FrameworkElement presumes only one visual child. 전달 된 모든 값 index 아닌 0을 사용 하면 예외가 throw 됩니다.Any value passed for index other than zero causes an exception to be thrown. 데코레이터, 표시기 또는 특수 한 렌더링을 사용 하 여 요소와 같은 몇 가지 공통 요소를 재정의 합니다 FrameworkElement 구현의 (중간 기본 클래스에서 구현).Several common elements, such as decorators, adorners, or elements with specialized rendering, override the FrameworkElement implementation (of the implementation from intermediate base classes). 다른 컬렉션을 허용 하는 반면 일부 구현에서는 여전히 한 시각적 자식을 적용 합니다.Some implementations still enforce one visual child whereas others allow a collection.

적용 대상