FrameworkContentElement.Parent Vlastnost

Definice

Získá nadřazený objekt v logické stromové struktuře pro tento prvek.

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

Hodnota vlastnosti

Logický nadřazený objekt pro tento prvek.

Příklady

Následující příklad zkontroluje, jestli Parent je hodnota typu TextPointer konkrétního typu.

// Traverse content in forward direction until the position is immediately after the opening 
// tag of a Run element, or the end of content is encountered.
while (position != null)
{
    // Is the current position just after an opening element tag?
    if (position.GetPointerContext(LogicalDirection.Backward) == TextPointerContext.ElementStart)
    {
        // If so, is the tag a Run?
        if (position.Parent is Run)
            break;
    }

    // Not what we're looking for; on to the next position.
    position = position.GetNextContextPosition(LogicalDirection.Forward);
}
' Traverse content in forward direction until the position is immediately after the opening 
' tag of a Run element, or the end of content is encountered.
Do While position IsNot Nothing
    ' Is the current position just after an opening element tag?
    If position.GetPointerContext(LogicalDirection.Backward) = TextPointerContext.ElementStart Then
        ' If so, is the tag a Run?
        If TypeOf position.Parent Is Run Then
            Exit Do
        End If
    End If

    ' Not what we're looking for on to the next position.
    position = position.GetNextContextPosition(LogicalDirection.Forward)
Loop

Poznámky

Všimněte si, že logický nadřazený prvek elementu se může potenciálně změnit v závislosti na funkčnosti vaší aplikace a zachování hodnoty této vlastnosti nebude tuto změnu odrážet. Obvykle byste měli získat hodnotu bezprostředně předtím, než ji budete potřebovat.

Další informace o procházení logických stromů a scénářích, ve kterých je vhodný tento přístup ke zjišťování prvků, najdete v tématu Stromy ve WPF .

Systém vlastností potenciálně přepočítá všechny hodnoty vlastností elementu při jeho opětovném zobrazení, protože některé vlastnosti dědí hodnoty prostřednictvím logického stromu. Hodnota DataContext , která platí pro vazby, se může také změnit, když jsou prvky překreslovány.

Změna nadřazeného prvku se obvykle provádí pouze prostřednictvím manipulace s kolekcemi, pomocí vyhrazených metod přidání nebo odebrání nebo nastavením vlastností obsahu prvků.

Nejběžnějším scénářem použití Parent vlastnosti je získání odkazu a následné získání různých FrameworkContentElement hodnot vlastností z nadřazeného objektu. Pro šablony Parent bude nullnakonec šablona . Pokud chcete přejít za tento bod a rozšířit do logického stromu, ve kterém je šablona skutečně použita, použijte TemplatedParent.

Platí pro

Viz také