FrameworkElement.LayoutUpdated Evento
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Se produce cuando cambia el diseño del árbol visual, debido a que las propiedades relevantes para el diseño cambian el valor o alguna otra acción que actualiza el diseño.
// 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 de evento
Comentarios
LayoutUpdated
es el último evento de duración del objeto que se va a producir en la secuencia de carga XAML antes de que un control esté listo para la interacción. Sin embargo, LayoutUpdated
también puede producirse en tiempo de ejecución durante la duración del objeto, por diversos motivos: un cambio de propiedad, un cambio de tamaño de ventana o una solicitud de diseño en tiempo de ejecución (UpdateLayout o una plantilla de control modificada). El LayoutUpdated
evento se desencadena después de que se produzcan todos los eventos SizeChanged en una secuencia de diseño.
LayoutUpdated
puede producirse cuando el objeto donde está asociado el controlador no cambia necesariamente nada en el árbol visual debajo de él. Por ejemplo, imagine un contenedor de diseño donde hay dos elementos secundarios que comparten espacio. Si el primer objeto cambia una propiedad que fuerza un nuevo diseño, ambos objetos activan LayoutUpdated porque el segundo objeto se puede cambiar aunque su propio diseño secundario no cambie.
Al controlar LayoutUpdated
, no se base en el valor del remitente . Para LayoutUpdated
, el remitente siempre null
es , independientemente de dónde se adjunte el controlador. Esto es para evitar que los controladores asignen cualquier significado al remitente, por ejemplo, implicando que era ese elemento específico que desencadenó el evento fuera del árbol visual.
LayoutUpdated
implica que algo en el árbol visual general ha cambiado y cada objeto específico en cualquier parte del árbol tiene la opción de controlar esta repetición. Si está familiarizado con el diseño de la API de representación de nivel inferior, puede equiparar LayoutUpdated
la desencadenación como similar a una marca "redraw needed" que se establece como parte de una lógica de representación en modo retenido controlada por objetos.
Dado LayoutUpdated
que se desencadena en muchas circunstancias y no siempre es específico de un objeto que realmente cambia, considere si controlar el evento SizeChanged en su lugar es más adecuado para su escenario.