FrameworkContentElement.Parent Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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 null
finalement . Pour passer ce point et l’étendre à l’arborescence logique où le modèle est réellement appliqué, utilisez TemplatedParent.