FrameworkContentElement.Parent Proprietà

Definizione

Ottiene l'elemento padre nell'albero logico per questo elemento.Gets the parent in the logical tree for this element.

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à

Elemento padre logico di questo elemento.The logical parent for this element.

Esempi

Nell'esempio seguente viene verificato se il Parent di un TextPointer è di un determinato tipo.The following example checks to see whether the Parent of a TextPointer is of a particular type.

// 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ò variare a seconda della funzionalità dell'applicazione e mantenere il valore di questa proprietà non rifletterà la modifica.Note that the logical parent of an element can potentially change depending on your application functionality, and keeping the value of this property will not reflect that change. In genere è necessario ottenere il valore immediatamente prima che sia necessario.You typically should get the value immediately before you need it.

Vedere strutture ad albero in WPF per altre informazioni sull'attraversamento degli alberi logici e sugli scenari in cui è opportuno adottare questo approccio per l'individuazione di elementi.See Trees in WPF for more information about traversing logical trees, and the scenarios where taking this approach towards element discovery is appropriate.

Il sistema di proprietà rileverà potenzialmente tutti i valori di proprietà di un elemento quando viene associato un nuovo elemento padre, perché alcune proprietà ereditano i valori tramite l'albero logico.The property system will potentially recalculate all property values of an element when it is reparented, because some properties inherit values through the logical tree. Il DataContext che si applica alle associazioni può anche cambiare quando gli elementi sono associati a un nuovo elemento padre.The DataContext that applies for bindings can also change when elements are reparented.

La modifica dell'elemento padre di un elemento viene in genere eseguita solo tramite la manipolazione di raccolte, usando metodi di aggiunta o rimozione dedicati oppure tramite l'impostazione di proprietà di contenuto di elementi.Changing an element's parent is typically only done through manipulation of collections, by using dedicated add or remove methods, or through setting content properties of elements.

Lo scenario più comune per l'uso della proprietà Parent è ottenere un riferimento e quindi ottenere vari FrameworkContentElement valori di proprietà dall'elemento padre.The most typical scenario for using the Parent property is to obtain a reference and then get various FrameworkContentElement property values from the parent. Per i modelli, la Parent del modello verrà null.For templates, the Parent of the template eventually will be null. Per superare questo punto ed estenderlo nell'albero logico in cui è effettivamente applicato il modello, usare TemplatedParent.To get past this point and extend into the logical tree where the template is actually applied, use TemplatedParent.

Si applica a

Vedi anche