FrameworkContentElement.Parent Egenskap

Definition

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.

Gäller för

Se även