FrameworkElement.LayoutUpdated Событие

Определение

Происходит при изменении макета визуального дерева из-за изменения значения свойств макета или другого действия, обновляющего макет.

// 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"/>
 

Тип события

Комментарии

LayoutUpdated — это последнее событие времени существования объекта, которое происходит в последовательности загрузки XAML, прежде чем элемент управления готов к взаимодействию. LayoutUpdated Однако во время выполнения также может возникать во время выполнения во время существования объекта по различным причинам: изменение свойств, изменение размера окна или запрос макета среды выполнения (UpdateLayout или измененный шаблон элемента управления). Событие LayoutUpdated запускается после выполнения всех событий SizeChanged в последовательности макета.

LayoutUpdated может возникать, когда объект, в котором прикреплен обработчик, не обязательно изменяет ничего в визуальном дереве под ним. Например, представьте контейнер макета, в котором есть два дочерних элемента общего пространства. Если первый объект изменяет свойство, которое принудительно создает новый макет, оба объекта срабатывает, так как второй объект может быть изменен даже в том случае, если его собственный дочерний макет не изменяется.

При обработке LayoutUpdatedне полагаться на значение отправителя . Для LayoutUpdated, отправитель всегда nullявляется независимо от того, где подключен обработчик. Это позволяет запретить обработчикам назначать любое значение отправителю, например подразумевать, что это был конкретный элемент, который запустил событие из визуального дерева. LayoutUpdated подразумевает, что что-то в общем визуальном дереве изменилось, и каждый конкретный объект в любом месте дерева имеет возможность обрабатывать это вхождение. Если вы знакомы с проектом API отрисовки нижнего уровня, вы можете присвоить LayoutUpdated ему так же, как и флаг перерасхода, заданный как часть логики отрисовки на основе объекта, сохраняемой в режиме отрисовки.

Так как LayoutUpdated выполняется во многих обстоятельствах и не всегда зависит от объекта, который на самом деле изменяется, рассмотрите ли обработка события SizeChanged более подходящим для вашего сценария.

Применяется к

См. также раздел