FrameworkElement.OnVisualParentChanged(DependencyObject) Méthode

Définition

Appelé lorsque le parent de cet élément dans l’arborescence visuelle est modifié. Substitue OnVisualParentChanged(DependencyObject).

protected public:
 override void OnVisualParentChanged(System::Windows::DependencyObject ^ oldParent);
protected internal override void OnVisualParentChanged(System.Windows.DependencyObject oldParent);
override this.OnVisualParentChanged : System.Windows.DependencyObject -> unit
Protected Friend Overrides Sub OnVisualParentChanged (oldParent As DependencyObject)

Paramètres

oldParent
DependencyObject

Ancien élément parent. Peut être null d’indiquer que l’élément n’avait pas de parent visuel précédemment.

Remarques

L’arborescence visuelle est potentiellement différente de l’arborescence logique, car elle omet les éléments qui ne s’affichent pas visuellement, tels que les collections, et développe certains éléments en fonction de leur thème et de leur composition de style. Pour plus d’informations, consultez Arborescences dans WPF.

Notes pour les héritiers

L’implémentation par défaut de cette méthode virtuelle interroge le nouveau parent, déclenche différents événements d’initialisation et définit des indicateurs internes sur l’état FrameworkElement d’initialisation approprié. Enfin, il appelle les implémentations de base successives comme déclarées par UIElement, qui appelle à son tour sa base en Visual. Appelez toujours l’implémentation de base pour conserver ce comportement, sinon le comportement de l’arborescence d’éléments pour cet élément lorsqu’il est déclaré en tant qu’enfant d’un autre élément peut ne pas être comme prévu.

Quelques classes Windows Presentation Foundation (WPF) existantes remplacent cette méthode, par exemple : OnVisualParentChanged(DependencyObject), OnVisualParentChanged(DependencyObject). Le scénario le plus courant consiste à appliquer que le nouveau parent doit être un type particulier. Cela peut impliquer la levée d’une exception si le nouveau parent a échoué d’une certaine manière de test de type. Une version spécialisée de ce scénario existe dans les implémentations pour les éléments de liste et les éléments de menu, qui n’ont aucun sens en dehors d’un visuel parent propriétaire d’une collection appropriée pour les stocker. Notez que ces cas ne déclenchent pas nécessairement d’exceptions, car il peut y avoir des scénarios de concepteur qui s’appuient sur des éléments réparants qui sont momentanément sans leurs parents « réguliers ».

Cette méthode est également substituée dans certains éléments qui sont généralement l’élément racine, tel que Window. Un autre cas est celui qui est l’élément racine apparent dans le balisage, mais qui génère automatiquement une infrastructure plus grande dans une arborescence logique compilée (par exemple Page). Les Window implémentations Page et les implémentations scellent délibérément la méthode.

S’applique à

Voir aussi