FrameworkElement.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 l’élément parent logique de 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 de cet élément.
Exemples
L’exemple suivant montre le code qui recherche le parent d’un élément, puis utilise les valeurs de propriété du parent pour définir les propriétés de l’élément enfant à correspondre. Dans ce cas, il s’agit de propriétés qui affectent la taille du rendu.
private void OnUIReady(object sender, System.EventArgs e)
{
LinePane.Width = ((StackPanel)LinePane.Parent).ActualWidth;
LinePane.Height = ((StackPanel)LinePane.Parent).ActualHeight;
DesignerPane.MouseLeave += new System.Windows.Input.MouseEventHandler(DesignerPane_MouseLeave);
this.SizeChanged += new SizeChangedEventHandler(Window1_SizeChanged);
}
Private Sub OnUIReady(ByVal sender As Object, ByVal e As System.EventArgs)
LinePane.Width = (CType(LinePane.Parent, StackPanel)).ActualWidth
LinePane.Height = (CType(LinePane.Parent, StackPanel)).ActualHeight
AddHandler DesignerPane.MouseLeave, AddressOf DesignerPane_MouseLeave
AddHandler SizeChanged, AddressOf Window1_SizeChanged
End Sub
Remarques
Parent peut être null
dans les cas où un élément a été instancié, mais n’est attaché à aucune arborescence logique qui se connecte finalement à l’élément racine au niveau de la page, ou à l’objet application.
Notez que le parent logique d’un élément peut potentiellement changer en fonction des fonctionnalités de votre application. 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.
Pour plus d’informations sur la traversée d’arborescences logiques, consultez Arborescences dans WPF et les scénarios où l’utilisation Parent comme technique de découverte d’éléments parents est appropriée.
Le moteur 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 des é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 par 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 différentes FrameworkElement valeurs de propriété à partir du parent. Pour les modèles, le Parent du modèle sera null
finalement . Pour dépasser ce point et l’étendre dans l’arborescence logique où le modèle est réellement appliqué, utilisez TemplatedParent.
Notez que cette propriété ne signale pas les parents d’arborescence visuelle dans les cas où ceux-ci diffèrent des parents d’arborescence logique. Les parents d’arborescence visuelle ne sont généralement pas importants pour les cas d’application générale, mais peuvent être les éléments parent souhaités pour certains cas de niveau visuel. Consultez VisualTreeHelper.