FrameworkElement.LayoutUpdated Evento
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Si verifica quando il layout dell'albero visivo cambia, a causa della modifica del valore delle proprietà pertinenti del 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 eseguire 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 attivato dopo che si verificano tutti gli eventi SizeChanged in una sequenza di layout.
LayoutUpdated
può verificarsi quando l'oggetto in cui è collegato il gestore non cambia necessariamente nulla nell'albero visivo sotto di esso. 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 layout della propria filiale non cambia.
Quando si gestisce LayoutUpdated
, non si basa sul valore del mittente . Per LayoutUpdated
, il mittente è sempre null
, indipendentemente dalla posizione in cui è collegato il gestore. Si tratta di impedire ai gestori di assegnare qualsiasi significato al mittente, ad esempio implicando che fosse l'elemento specifico che ha generato l'evento dall'albero visivo.
LayoutUpdated
implica che un elemento nell'albero visivo complessivo è cambiato e ogni oggetto specifico ovunque nell'albero abbia la possibilità di gestire questa occorrenza. Se si ha familiarità con la progettazione dell'API di rendering di livello inferiore, è possibile eseguire l'equa LayoutUpdated
creazione di un flag di "ridisegno necessario" come parte di una logica di rendering basata su oggetti.
Poiché LayoutUpdated
viene generato in molte circostanze e non è sempre specifico di un oggetto che in realtà cambia, valutare se gestire l'evento SizeChanged è invece più appropriato per lo scenario.