Freigeben über


FrameworkElement.OnVisualParentChanged(DependencyObject) Methode

Definition

Wird aufgerufen, wenn das übergeordnete Element dieses Elements in der visuellen Struktur geändert wird. Überschreibt 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)

Parameter

oldParent
DependencyObject

Das alte übergeordnete Element. Kann null sein, um anzugeben, dass das Element zuvor über kein visuelles übergeordnetes Element verfügt hat.

Hinweise

Die visuelle Struktur unterscheidet sich potenziell von der logischen Struktur, da sie Elemente auslässt, die nicht visuell gerendert werden, z. B. Sammlungen, und erweitert einige Elemente auf der Grundlage ihres Designs und stilkomositing. Weitere Informationen finden Sie unter Strukturen in WPF.

Hinweise für Vererber

Die Standardimplementierung dieser virtuellen Methode abfragen für das neue übergeordnete Objekt, löst verschiedene Initialisierungsereignisse aus und legt interne Flags zum Initialisierungszustand der FrameworkElement entsprechenden Art fest. Schließlich ruft er die nachfolgenden Basisimplementierungen wie deklariert UIElementauf, die wiederum seine Basis in Visualaufrufen. Rufen Sie immer die Basisimplementierung auf, um dieses Verhalten beizubehalten, andernfalls ist das Elementstrukturverhalten für dieses Element beim Deklarierten als untergeordnetes Element möglicherweise nicht wie erwartet.

Ein paar vorhandene Windows Presentation Foundation (WPF)-Klassen überschreiben diese Methode, z. B. : OnVisualParentChanged(DependencyObject), OnVisualParentChanged(DependencyObject). Das am häufigsten verwendete Szenario besteht darin, zu erzwingen, dass das neue übergeordnete Element einen bestimmten Typ sein muss. Dies kann dazu führen, dass eine Ausnahme ausgelöst wird, wenn das neue übergeordnete Element einige Arten von Typtests fehlgeschlagen hat. Eine spezielle Version dieses Szenarios ist in Implementierungen für Listenelemente und Menüelemente vorhanden, die außerhalb einer übergeordneten Visuellen, die eine entsprechende Auflistung besitzt, um sie zu speichern, nicht sinnvoll sind. Beachten Sie, dass diese Fälle nicht unbedingt Ausnahmen auslösen, da es Designerszenarien gibt, die sich auf Dieparentingelemente verlassen, die momentarily ohne ihre "regulären" Eltern sind.

Diese Methode wird auch in bestimmten Elementen außer Kraft gesetzt, die in der Regel das Stammelement sind, z Window. B. . Ein weiterer Fall ist Elemente, die das offensichtliche Stammelement im Markup sind, aber die eine größere Infrastruktur in einer kompilierten logischen Struktur (z Page. B. ) automatisch generiert. Die Window und Page Implementierungen versiegeln die Methode absichtlich.

Gilt für

Siehe auch