Parent プロパティ

FrameworkElement.Parent プロパティ

この要素の論理上の親要素を取得します。

名前空間: System.Windows
アセンブリ: PresentationFramework (presentationframework.dll 内)
XML 名前空間 :  http://schemas.microsoft.com/winfx/2006/xaml/presentation

public DependencyObject Parent { get; }
/** @property */
public DependencyObject get_Parent ()

public function get Parent () : DependencyObject

このプロパティは XAML では使用できません。

プロパティ値

この要素の論理上の親。

要素がインスタンス化されていても、最終的にページ レベルのルート要素やアプリケーション オブジェクトへとつながる論理ツリーにアタッチされていない場合は、Parent が null 参照 (Visual Basic では Nothing) になります。

要素の論理上の親は、アプリケーションの機能によっては変更される可能性があります。その場合、このプロパティに保持されている値にはその変更は反映されません。通常は、必要になる直前に値を取得する必要があります。

論理ツリーの検査の詳細と、Parent を使用して親要素を検索できるシナリオについては、「要素ツリー」を参照してください。

要素の親を再指定すると、論理ツリーを通じて値を継承するプロパティがあるため、プロパティ エンジンによってすべてのプロパティ値が再計算される可能性があります。また、バインディングに適用される DataContext が変更される可能性もあります。

通常、要素の親の変更は、コレクションを (専用の追加や削除のメソッドを使用して) 操作するか、要素のコンテンツ プロパティを設定することによってのみ行われますす。

Parent プロパティを使用する最も一般的なシナリオは、参照を取得して、さまざまな FrameworkElement プロパティの値を親から取得する場合です。テンプレートの場合、Parent は最終的に null 参照 (Visual Basic では Nothing) になります。この段階を超えて、テンプレートが実際に適用されている論理ツリーにまで範囲を広げるには、TemplatedParent を使用します。

このプロパティでは、ビジュアル ツリーの親が論理ツリーの親と異なる場合、ビジュアル ツリーの親は報告されません。一般的なアプリケーションでビジュアル ツリーの親が重要になることは通常ありませんが、特定のビジュアルのレベルでは、ビジュアル ツリーの親要素が求められる場合もあります。VisualTreeHelper を参照してください。

要素の親をチェックし、親のプロパティ値に合わせて子要素のプロパティを設定するコードの例を次に示します。この例では、描画サイズに影響するプロパティが使用されています。

private void OnUIReady(object sender, System.EventArgs e)
{
    LinePane.Width = ((StackPanel)LinePane.Parent).ActualWidth;
    LinePane.Height = ((StackPanel)LinePane.Parent).ActualHeight;
    DesignerPane.MouseLeave += new System.Windows.Input.MouseEventHandler(DesignerPane_MouseLeave);
    this.SizeChanged += new SizeChangedEventHandler(Window1_SizeChanged);
}

Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。

.NET Framework

サポート対象 : 3.0

コミュニティの追加

追加
表示:
© 2016 Microsoft