FrameworkElement.LayoutUpdated Event

Tritt ein, wenn sich das Layout der visuellen Baumstruktur ändert.

Syntax


public event EventHandler<object> LayoutUpdated


<frameworkElement LayoutUpdated="eventhandler"/>
 

Ereignisinformationen

DelegatSystem.EventHandler<Object> [.NET] | Windows.Foundation.EventHandler<Object> [C++]

Hinweise

LayoutUpdated ist das letzte Objektlebensdauerereignis, das in der XAML-Ladesequenz auftritt, bevor ein Steuerelement zur Interaktion bereit ist. LayoutUpdated kann jedoch aus mehreren Gründen auch während der Objektlebensdauer zur Laufzeit auftreten: eine Eigenschaftenänderung, eine Fenstergrößenanpassung oder eine explizite Anforderung (UpdateLayout oder eine geänderte Steuerelementvorlage). Das LayoutUpdated-Ereignis wird ausgelöst, nachdem alle SizeChanged-Ereignisse in der Struktur ausgelöst wurden.

LayoutUpdated kann in Fällen auftreten, in denen das Objekt, an das der Handler angefügt ist, keine Änderungen in der darunter liegenden visuellen Struktur vornimmt. Stellen Sie sich z. B. einen Layoutcontainer mit zwei Elementen vor. Wenn das erste Objekt eine Eigenschaft ändert, die ein neues Layout erzwingt, wird von beiden Objekten LayoutUpdated ausgelöst, da das zweite Objekt möglicherweise neu angeordnet wird, auch wenn sich sein eigenes untergeordnetes Layout nicht ändert.

Wenn Sie LayoutUpdated behandeln, verlassen Sie sich nicht auf den sender-Wert. Für LayoutUpdated ist sender immer NULL, unabhängig von der Position, an der der Handler angefügt wird. Damit soll verhindert werden, dass von Handlern sender eine Bedeutung zugewiesen wird, z. B. das angegeben wird, dass das Ereignis von einem bestimmten Element aus der visuellen Struktur geholt wurde. Eher deutet LayoutUpdated darauf hin, dass sich etwas in der gesamten visuellen Struktur geändert hat, und jedes bestimmte Objekt überall in der Struktur hat die Option, dieses Vorkommen zu behandeln.

Windows 8-Verhalten

Windows 8 hatte ein Problem beim Verfolgen mehrerer Listener für dieses Ereignis. Wenn mehrere Listener/Handler für das Ereignis vorhanden sind, würden bei dem Versuch, einen davon zu entfernen, alle entfernt werden. Das Problem ist in Windows 8.1 behoben; das Entfernen von Ereignishandler entfernt ordnungsgemäß nur einen Listener. Für den Großteil des Codes sind keine Änderungen oder Verhaltensüberprüfungen erforderlich, da mehrere Listener ein ungewöhnliches Szenario darstellen.

Apps, die für Windows 8 kompiliert wurden, jedoch unter Windows 8.1 ausgeführt werden, verwenden weiterhin das Windows 8-Verhalten.

Anforderungen

Mindestens unterstützter Client

Windows 8

Mindestens unterstützter Server

Windows Server 2012

Namespace

Windows.UI.Xaml
Windows::UI::Xaml [C++]

Metadaten

Windows.winmd

Siehe auch

FrameworkElement

 

 

Anzeigen:
© 2014 Microsoft