FrameworkContentElement.Parent Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nadřazený objekt v logickém stromu 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ý prvek.
Příklady
Následující příklad zkontroluje, zda Parent je určitý TextPointer typ.
// 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 může potenciálně změnit v závislosti na funkčnosti vaší aplikace a zachování hodnoty této vlastnosti nebude odrážet tuto změnu. Hodnotu byste obvykle měli získat hned předtím, než ji budete potřebovat.
Další informace o procházení logických stromů a scénářích, ve kterých je tento přístup ke zjišťování prvků vhodný, najdete v tématu Stromy ve WPF .
Systém vlastností může při opětovném načtení přepočítat všechny hodnoty vlastností prvku, protože některé vlastnosti dědí hodnoty prostřednictvím logického stromu. To DataContext , které platí pro vazby, se může také změnit, když jsou prvky znovu aktualizová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 nullšablona nakonec . Chcete-li se dostat do tohoto bodu a rozšířit do logického stromu, ve kterém je šablona skutečně použita, použijte TemplatedParent.