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. コンテンツ モデルGetVisualChild0 個または 1 つ子要素をコレクションではなくをサポートします。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) です。 有効な要素を返す必要があります、その他のインデックスが範囲外の例外をスローする必要があります。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)を 1 つ以上の使用可能な子を返すが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ビジュアル子の 1 つだけを前提としています。The default implementation in FrameworkElement presumes only one visual child. 値を渡すindex以外 0 原因がスローされる例外。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). 一部の実装は、コレクションが許可される他のユーザーがまだビジュアル子の 1 つを適用します。Some implementations still enforce one visual child whereas others allow a collection.

適用対象