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 는 처리기가 연결된 개체가 해당 개체 아래의 시각적 트리에서 아무 것도 변경하지 않을 때 발생할 수 있습니다. instance 경우 공간을 공유하는 두 개의 자식 요소가 있는 레이아웃 컨테이너를 상상해 보세요. 첫 번째 개체가 새 레이아웃을 강제 적용하는 속성을 변경하는 경우 두 개체는 자체 보조 레이아웃이 변경되지 않더라도 두 번째 개체의 위치를 변경할 수 있으므로 LayoutUpdated를 발생합니다.

를 처리 LayoutUpdated할 때 는 보낸 사람 값을 사용하지 마세요. 의 경우 LayoutUpdated발신자는 처리기가 연결된 위치에 관계없이 항상 null입니다. 이는 처리기가 시각적 트리에서 이벤트를 발생시킨 특정 요소임을 암시하는 것과 같이 보낸 사람에게 의미를 할당하지 못하도록 하기 위한 것입니다. LayoutUpdated 는 전체 시각적 트리의 항목이 변경되었으며 트리의 특정 개체마다 이 항목을 처리하는 옵션이 있음을 의미합니다. 하위 수준 렌더링 API 디자인에 익숙한 경우 개체 기반의 유지 모드 렌더링 논리의 일부로 설정되는 "다시 그리기 필요" 플래그와 유사하게 실행되는 것과 동일 LayoutUpdated 시할 수 있습니다.

많은 상황에서 발생하며 실제로 변경되는 개체와 항상 관련이 있는 것은 아니므로 LayoutUpdatedSizeChanged 이벤트를 대신 처리하는 것이 시나리오에 더 적합한지 여부를 고려합니다.

적용 대상

추가 정보