FrameworkElement.LayoutUpdated Evento

Definizione

Si verifica quando il layout della struttura ad albero visuale cambia, a causa della modifica del valore delle proprietà pertinenti al layout o di un'altra azione che aggiorna il layout.

// Register
event_token LayoutUpdated(EventHandler<IInspectable> const& handler) const;

// Revoke with event_token
void LayoutUpdated(event_token const* cookie) const;

// Revoke with event_revoker
FrameworkElement::LayoutUpdated_revoker LayoutUpdated(auto_revoke_t, EventHandler<IInspectable> const& handler) const;
public event System.EventHandler<object> LayoutUpdated;
function onLayoutUpdated(eventArgs) { /* Your code */ }
frameworkElement.addEventListener("layoutupdated", onLayoutUpdated);
frameworkElement.removeEventListener("layoutupdated", onLayoutUpdated);
- or -
frameworkElement.onlayoutupdated = onLayoutUpdated;
Public Custom Event LayoutUpdated As EventHandler(Of Object) 
<frameworkElement LayoutUpdated="eventhandler"/>
 

Tipo evento

Commenti

LayoutUpdated è l'ultimo evento di durata dell'oggetto da verificare nella sequenza di caricamento XAML prima che un controllo sia pronto per l'interazione. Tuttavia, LayoutUpdated può verificarsi anche in fase di esecuzione durante la durata dell'oggetto, per diversi motivi: una modifica della proprietà, un ridimensionamento di una finestra o una richiesta di layout di runtime (UpdateLayout o un modello di controllo modificato). L'evento LayoutUpdated viene generato dopo che si verificano tutti gli eventi SizeChanged in una sequenza di layout.

LayoutUpdated può verificarsi quando l'oggetto in cui è associato il gestore non cambia necessariamente nulla nella struttura ad albero visuale sottostante. Si supponga, ad esempio, che un contenitore di layout in cui siano presenti due elementi figlio che condividono lo spazio. Se il primo oggetto modifica una proprietà che forza un nuovo layout, entrambi gli oggetti generano LayoutUpdated perché il secondo oggetto potrebbe essere riposizionato anche se il relativo layout sussidiario non cambia.

Quando si gestisce LayoutUpdated, non basarsi sul valore del mittente . Per LayoutUpdated, il mittente è sempre null, indipendentemente dalla posizione in cui è associato il gestore. Ciò impedisce ai gestori di assegnare qualsiasi significato al mittente, ad esempio implicando che si tratta di un elemento specifico che ha generato l'evento dalla struttura ad albero visuale. LayoutUpdated implica che qualcosa nell'albero visivo complessivo è cambiato e ogni oggetto specifico in qualsiasi punto della struttura ad albero ha la possibilità di gestire questa occorrenza. Se si ha familiarità con la progettazione dell'API di rendering di livello inferiore, è possibile equivalere LayoutUpdated a essere generato come simile a un flag di "ridisegno necessario" impostato come parte di una logica di rendering in modalità mantenuta basata su oggetti.

Poiché LayoutUpdated viene generato in molte circostanze e non è sempre specifico di un oggetto che effettivamente cambia, valutare se gestire l'evento SizeChanged è invece più appropriato per lo scenario.

Si applica a

Vedi anche