다음을 통해 공유


NonVirtualizingLayout 클래스

정의

호스트에 대한 자식 요소의 크기를 조정하고 정렬하며 가상화를 지원하지 않는 개체의 기본 클래스를 나타냅니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

/// [Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Version(1)]
class NonVirtualizingLayout : Layout
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.XamlContract, 65536)]
class NonVirtualizingLayout : Layout
[Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Version(1)]
public class NonVirtualizingLayout : Layout
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.XamlContract), 65536)]
public class NonVirtualizingLayout : Layout
Public Class NonVirtualizingLayout
Inherits Layout
상속
NonVirtualizingLayout
파생
특성
Microsoft.UI.Xaml.CustomAttributes.MUXContractPropertyAttribute MarshalingBehaviorAttribute ThreadingAttribute VersionAttribute ContractVersionAttribute

예제

자세한 정보, 디자인 지침 및 코드 예제는 레이아웃을 참조 하세요.

WinUI 3 갤러리WinUI 2 갤러리 앱에는 대부분의 WinUI 3 및 WinUI 2 컨트롤, 특징, 기능의 대화형 예제가 포함되어 있습니다.

이미 설치된 경우 WinUI 3 갤러리 또는 WinUI 2 갤러리 링크를 클릭하여 갤러리를 엽니다.

설치되지 않은 경우 Microsoft Store에서 WinUI 3 갤러리WinUI 2 갤러리를 다운로드할 수 있습니다.

GitHub에서 두 갤러리의 소스 코드를 가져올 수도 있습니다(WinUI 3는 main 분기, WinUI 2는 winui2 분기 사용).

설명

NonVirtualizingLayout은 가상화를 지원하지 않는 레이아웃의 기본 클래스입니다. 상속하여 고유한 레이아웃을 만들 수 있습니다.

가상화가 아닌 레이아웃은 자식 요소를 측정하고 정렬할 수 있습니다.

생성자

NonVirtualizingLayout()

NonVirtualizingLayout 클래스의 새 인스턴스를 초기화합니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

메서드

Arrange(LayoutContext, Size)

자식 요소를 배치하고 컨테이너 UIElement의 크기를 결정합니다. 연결된 레이아웃을 지원하는 컨테이너 요소는 레이아웃 재정의 구현에서 이 메서드를 호출하여 재귀 레이아웃 업데이트를 구성해야 합니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

(다음에서 상속됨 Layout)
ArrangeOverride(NonVirtualizingLayoutContext, Size)

파생 클래스에서 구현되는 경우 레이아웃의 "정렬" 패스에 대한 동작을 제공합니다. 클래스는 이 메서드를 재정의하여 고유한 "정렬" 패스 동작을 정의할 수 있습니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

InitializeForContext(LayoutContext)

레이아웃이 UIElement 컨테이너에 연결되면 필요한 컨테이너별 상태를 초기화합니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

(다음에서 상속됨 Layout)
InitializeForContextCore(NonVirtualizingLayoutContext)

파생 클래스에서 재정의되는 경우 레이아웃이 UIElement 컨테이너에 연결될 때 필요한 컨테이너별 상태를 초기화합니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

InvalidateArrange()

이 레이아웃을 참조하는 모든 UIElement 컨테이너의 정렬 상태(레이아웃)를 무효화합니다. 무효화 후 UIElement는 비동기적으로 발생하는 레이아웃을 업데이트합니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

(다음에서 상속됨 Layout)
InvalidateMeasure()

이 레이아웃을 참조하는 모든 UIElement 컨테이너의 측정 상태(레이아웃)를 무효화합니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

(다음에서 상속됨 Layout)
Measure(LayoutContext, Size)

컨테이너 요소에 대해 DesiredSize를 제안합니다. 연결된 레이아웃을 지원하는 컨테이너 요소는 자체 MeasureOverride 구현에서 이 메서드를 호출하여 재귀 레이아웃 업데이트를 구성해야 합니다. 연결된 레이아웃은 각 컨테이너의 UIElement 자식에 대해 Measure를 호출해야 합니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

(다음에서 상속됨 Layout)
MeasureOverride(NonVirtualizingLayoutContext, Size)

레이아웃 주기의 "측정값" 패스에 대한 동작을 제공합니다. 클래스는 이 메서드를 재정의하여 고유한 "Measure" 통과 동작을 정의할 수 있습니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

UninitializeForContext(LayoutContext)

UIElement 컨테이너에 이전에 저장된 레이아웃의 상태를 제거합니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

(다음에서 상속됨 Layout)
UninitializeForContextCore(NonVirtualizingLayoutContext)

파생 클래스에서 재정의된 경우 UIElement 컨테이너에 이전에 저장된 레이아웃의 상태를 제거합니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

이벤트

ArrangeInvalidated

정렬 상태(레이아웃)가 무효화되었을 때 발생합니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

(다음에서 상속됨 Layout)
MeasureInvalidated

측정 상태(레이아웃)가 무효화될 때 발생합니다.

이 설명서는 UWP용 WinUI 2에 적용됩니다(Windows 앱 SDKWinUI의 경우 Windows 앱 SDK 네임스페이스 참조).

(다음에서 상속됨 Layout)

적용 대상