FrameworkElement.TemplatedParent FrameworkElement.TemplatedParent FrameworkElement.TemplatedParent FrameworkElement.TemplatedParent Property


この要素の親テンプレートへの参照を取得します。Gets a reference to the template parent of this element. このプロパティは、要素がテンプレートによって作成されていない場合は無効です。This property is not relevant if the element was not created through a template.

 property System::Windows::DependencyObject ^ TemplatedParent { System::Windows::DependencyObject ^ get(); };
public System.Windows.DependencyObject TemplatedParent { get; }
member this.TemplatedParent : System.Windows.DependencyObject
Public ReadOnly Property TemplatedParent As DependencyObject


要素がFrameworkTemplateVisualTreeこの要素を作成します。The element whose FrameworkTemplateVisualTree caused this element to be created. この値は、頻繁にnullします。This value is frequently null.


TemplatedParent 多くの場合は、nullアプリケーション マークアップまたはコードに作成されるオブジェクト。TemplatedParent is frequently null for objects that are created in your application markup or code. これは、テンプレートを使用していないこれらのオブジェクトを直接作成するためです。This is because you create those objects directly, not via a template. オブジェクトをルートから、論理ツリーをウォークすることによって取得した参照またはテンプレートから提供されない参照を通常の名前。Object references obtained by walking the logical tree from the root, or by typical name references, do not come from a template.

あるケースTemplatedParentできない可能性がありますnullとビジュアル ツリーをウォーク特定低レベル入力イベントのイベント処理のヒット テストなどの操作を含めるVisualTreeHelper、列挙子の使用、付属している要素を返す可能性がありますかテンプレートです。Cases where TemplatedParent might not be null include operations such as hit-testing, event handling for certain low-level input events, walking the visual tree with VisualTreeHelper, or working with enumerators, which might return elements that came from templates. 別のケースでは具体的には呼び出すかどうかFindNameに対して既存のFrameworkTemplate返されたオブジェクトと連携します。Another case is if you specifically call FindName against an existing FrameworkTemplate and are work with the returned object.

テンプレートは、実際には共有オブジェクト、テンプレートの内容が 1 回だけ作成される場所です。Templates are actually shared objects, where the contents of the template are created only once. そのため、テンプレートから付属している要素へのオブジェクト参照を取得する場合、見かけ上の論理ツリーは、ページのルートに到達していないことを見つけることがあります。Therefore, if you obtain an object reference to an element that came from a template, you may find that the apparent logical tree does not reach to the page root. このようなテンプレートへの参照をページの論理ツリーを接続するために取得する必要があります、TemplatedParent値し、必要に応じて、その要素のツリーを移動します。 続行します。In order to connect such a template reference to the page's logical tree, you should get the TemplatedParent value and continue to navigate that element tree as desired.