FrameworkContentElement.Parent Propriété

Définition

Obtient le parent de l’arborescence logique pour cet élément.

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

Valeur de propriété

Parent logique pour cet élément.

Exemples

L’exemple suivant vérifie si le Parent d’un TextPointer est d’un type particulier.

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

Remarques

Notez que le parent logique d’un élément peut potentiellement changer en fonction des fonctionnalités de votre application, et que la conservation de la valeur de cette propriété ne reflète pas cette modification. Vous devez généralement obtenir la valeur immédiatement avant d’en avoir besoin.

Consultez Arborescences dans WPF pour plus d’informations sur la traversée des arborescences logiques et les scénarios dans lesquels cette approche de la découverte d’éléments est appropriée.

Le système de propriétés recalcule potentiellement toutes les valeurs de propriété d’un élément lorsqu’il est réparenté, car certaines propriétés héritent de valeurs via l’arborescence logique. Le DataContext qui s’applique aux liaisons peut également changer lorsque les éléments sont réparentés.

La modification du parent d’un élément s’effectue généralement uniquement par manipulation de collections, à l’aide de méthodes d’ajout ou de suppression dédiées ou à la définition des propriétés de contenu des éléments.

Le scénario le plus courant pour l’utilisation de la Parent propriété consiste à obtenir une référence, puis à obtenir diverses FrameworkContentElement valeurs de propriété à partir du parent. Pour les modèles, le Parent du modèle sera nullfinalement . Pour passer ce point et l’étendre à l’arborescence logique où le modèle est réellement appliqué, utilisez TemplatedParent.

S’applique à

Voir aussi