英語で読む

次の方法で共有


FrameworkElement.TemplatedParent プロパティ

定義

この要素の親テンプレートへの参照を取得します。 このプロパティは、要素がテンプレートによって作成されていない場合は無効です。

C#
public System.Windows.DependencyObject TemplatedParent { get; }

プロパティ値

この要素が作成される原因となった FrameworkTemplateVisualTree が属する要素。 この値は、 nullです。

注釈

TemplatedParent は、 null アプリケーション マークアップまたはコードで作成されるオブジェクトに対して頻繁に使用されます。 これは、テンプレートではなく、これらのオブジェクトを直接作成するためです。 ルートから論理ツリーを歩いて取得したオブジェクト参照、または一般的な名前参照によって取得されたオブジェクト参照は、テンプレートから取得されません。

TemplatedParentヒット テスト、特定の低レベル入力イベントに対するイベント処理、ビジュアル ツリーを でVisualTreeHelper歩く、列挙子を操作するなどの操作が含まれていないnull場合は、テンプレートから取得された要素を返す可能性があります。 もう 1 つのケースは、既存FrameworkTemplateの に対して を明示的に呼び出FindNameし、返されたオブジェクトを操作する場合です。

テンプレートは実際には共有オブジェクトであり、テンプレートの内容は 1 回だけ作成されます。 したがって、テンプレートから取得された要素へのオブジェクト参照を取得すると、見かけ上の論理ツリーがページ ルートに到達しないことがあります。 このようなテンプレート参照をページの論理ツリーに接続するには、値を TemplatedParent 取得し、必要に応じてその要素ツリー内を移動し続ける必要があります。

適用対象

製品 バージョン
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10