FrameworkElement.GetVisualChild(Int32) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
GetVisualChild(Int32) をオーバーライドし、子要素のコレクションから指定したインデックス位置の子を返します。
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
コレクション内の要求された子要素の 0 から始まるインデックス。
戻り値
要求された子要素。 これは null
を返しません。指定されたインデックスが範囲外の場合、例外がスローされます。
例
次の例は、カスタム装飾が複数のビジュアルの子に対して保持する値によって VisualCollection 宣言された値を使用する方法を示しています。 これらの値は、⿇と GetVisualChildのVisualChildrenCountオーバーライドを通じて報告されます。
// 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 のみです。 コンテンツ モデル GetVisualChild では、コレクションではなく、0 個または 1 個の子要素がサポートされます。
注意 (継承者)
この実装は、視覚的な子要素のよりわかりやすいコレクションを保持していない要素に対してのみ有効です。 このようなコレクションを持つ要素は、このメソッドをオーバーライドし、その要素でサポートされている子要素コレクション内の同等のインデックスにインデックスをマップする必要があります。 0 から (マイナス 1) の VisualChildrenCount 範囲のインデックスは有効な要素を返す必要があります。他のインデックスは範囲外の例外をスローする必要があります。 子コレクションをサポートし、複数の子を返すオーバーライド GetVisualChild(Int32) を行う要素型の例を次に示 Panelします。
既定の FrameworkElement 実装では、ビジュアルの子が 1 人であると想定されます。 0 以外の値が index
渡されると、例外がスローされます。 デコレーター、装飾、特殊なレンダリングを持つ要素など、いくつかの一般的な要素は、実装をオーバーライドします FrameworkElement (中間基底クラスからの実装の)。 一部の実装では、まだ 1 つのビジュアル子が適用されますが、他の実装ではコレクションが許可されます。