FrameworkElement.LayoutUpdated Evento
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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.