FrameworkContentElement.Parent Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar överordnad i det logiska trädet för det här elementet.
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
Egenskapsvärde
Det logiska överordnat för det här elementet.
Exempel
I följande exempel kontrolleras om Parent en TextPointer är av en viss 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
Kommentarer
Observera att det logiska överordnat elementet kan ändras beroende på dina programfunktioner, och att behålla värdet för den här egenskapen återspeglar inte den ändringen. Du bör vanligtvis hämta värdet omedelbart innan du behöver det.
Se Trees i WPF för mer information om hur du passerar logiska träd och de scenarier där det är lämpligt att använda den här metoden för elementidentifiering.
Egenskapssystemet beräknar eventuellt om alla egenskapsvärden för ett element när det tas bort, eftersom vissa egenskaper ärver värden via det logiska trädet. Det DataContext som gäller för bindningar kan också ändras när elementen har ändrats.
Att ändra ett elements överordnade objekt görs vanligtvis bara genom manipulering av samlingar, med hjälp av dedikerade metoder för att lägga till eller ta bort eller genom att ange innehållsegenskaper för element.
Det vanligaste scenariot för att använda Parent egenskapen är att hämta en referens och sedan hämta olika FrameworkContentElement egenskapsvärden från den överordnade egenskapen. För mallar blir Parentmallen null så småningom . Om du vill komma förbi den här punkten och utöka till det logiska trädet där mallen faktiskt tillämpas använder du TemplatedParent.