Partilhar via


FrameworkElement.LayoutUpdated Evento

Definição

Ocorre quando o layout da árvore visual é alterado, devido a propriedades relevantes ao layout alterando o valor ou alguma outra ação que atualiza o 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 de evento

Comentários

LayoutUpdated é o último evento de tempo de vida do objeto a ocorrer na sequência de carga XAML antes que um controle esteja pronto para interação. No entanto, LayoutUpdated também pode ocorrer em tempo de execução durante o tempo de vida do objeto, por vários motivos: uma alteração de propriedade, um redimensionamento de janela ou uma solicitação de layout de runtime (UpdateLayout ou um modelo de controle alterado). O LayoutUpdated evento é acionado depois que ocorrem todos os eventos SizeChanged em uma sequência de layout.

LayoutUpdated pode ocorrer quando o objeto em que o manipulador está anexado não altera necessariamente nada na árvore visual sob ele. Por exemplo, imagine um contêiner de layout em que há dois elementos filho compartilhando espaço. Se o primeiro objeto alterar uma propriedade que força um novo layout, ambos os objetos dispararão LayoutUpdated porque o segundo objeto poderá ser reposicionado mesmo que seu próprio layout de subsidiária não seja alterado.

Quando você lida com LayoutUpdated, não confie no valor do remetente . Para LayoutUpdated, o remetente é sempre null, independentemente de onde o manipulador está anexado. Isso é para impedir que os manipuladores atribuam qualquer significado ao remetente, como implicar que foi esse elemento específico que disparou o evento para fora da árvore visual. LayoutUpdated implica que algo na árvore visual geral foi alterado e cada objeto específico em qualquer lugar da árvore tem a opção de lidar com essa ocorrência. Se você estiver familiarizado com o design de API de renderização de nível inferior, poderá comparar LayoutUpdated ser acionado como semelhante a um sinalizador "redesenhar necessário" que está sendo definido como parte de uma lógica de renderização de modo retido controlada por objeto.

Como LayoutUpdated é acionado em muitas circunstâncias e nem sempre é específico para um objeto que realmente muda, considere se manipular o evento SizeChanged é mais apropriado para seu cenário.

Aplica-se a

Confira também