FrameworkContentElement.Parent Proprietà

Definizione

Ottiene l'elemento padre nell'albero logico per questo elemento.

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

Valore della proprietà

DependencyObject

Elemento padre logico di questo elemento.

Esempio

Nell'esempio seguente viene verificato se l'oggetto Parent di un TextPointer oggetto è di un tipo specifico.

// 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

Commenti

Si noti che l'elemento padre logico di un elemento può cambiare potenzialmente a seconda della funzionalità dell'applicazione e mantenere il valore di questa proprietà non rifletterà tale modifica. In genere si dovrebbe ottenere il valore immediatamente prima che sia necessario.

Per altre informazioni sull'attraversamento di alberi logici e sugli scenari in cui questo approccio verso l'individuazione degli elementi è appropriato, vedere Alberi in WPF .

Il sistema di proprietà ricalcola potenzialmente tutti i valori di proprietà di un elemento quando viene replicato, perché alcune proprietà ereditano valori tramite l'albero logico. L'oggetto DataContext che si applica per le associazioni può anche cambiare quando gli elementi vengono replicati.

La modifica dell'elemento padre di un elemento viene in genere eseguita solo tramite la manipolazione delle raccolte, usando metodi di aggiunta o rimozione dedicati o impostando le proprietà del contenuto degli elementi.

Lo scenario più tipico per l'uso della Parent proprietà consiste nel ottenere un riferimento e quindi ottenere vari FrameworkContentElement valori di proprietà dall'elemento padre. Per i modelli, l'oggetto Parent del modello sarà nullinfine . Per superare questo punto ed estenderlo nell'albero logico in cui viene effettivamente applicato il modello, usare TemplatedParent.

Si applica a

Vedi anche