다음을 통해 공유


LinedFlowLayout 클래스

정의

모든 요소에 대해 동일한 높이를 사용하여 래핑 레이아웃에서 요소를 왼쪽에서 오른쪽으로 순차적으로 배치한 다음 위쪽에서 아래쪽으로 배치하는 컨트롤을 나타냅니다.

/// [Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallback(enable=true)]
/// [Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodName(value="OnPropertyChanged")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.XamlContract, 327680)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class LinedFlowLayout : VirtualizingLayout
[Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallback(enable=true)]
[Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodName(value="OnPropertyChanged")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.XamlContract), 327680)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class LinedFlowLayout : VirtualizingLayout
Public Class LinedFlowLayout
Inherits VirtualizingLayout
상속
Object IInspectable DependencyObject Layout VirtualizingLayout LinedFlowLayout
특성
Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackAttribute Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodNameAttribute ContractVersionAttribute MarshalingBehaviorAttribute ThreadingAttribute

설명

LinedFlowLayout은 요소를 왼쪽에서 오른쪽으로 순차적으로 배치한 다음, 위쪽에서 아래쪽으로 래핑 레이아웃으로 배치합니다. 이 레이아웃을 사용하여 항목의 높이가 고정되어 있지만 너비가 가변적인 항목 컬렉션을 표시합니다. 이미지 기반 컬렉션에 사용하는 것이 좋습니다. 이 레이아웃에는 컬렉션에 항목이 추가되거나 제거된 경우와 보기 크기가 조정될 때 재생되는 기본 제공 애니메이션도 있습니다.

LinedFlowLayout을 사용하려면 ItemsView.Layout 또는 ItemsRepeater.Layout 속성의 값으로 설정합니다.

다음은 줄 지어 있는 흐름 레이아웃의 사진 컬렉션을 보여 주는 ItemsView 컨트롤입니다.

<ItemsView Width="500" Height="400" HorizontalAlignment="Left"
           ItemTemplate="{StaticResource LinedFlowLayoutItemTemplate}">
    <ItemsView.Layout>
        <LinedFlowLayout ItemsStretch="Fill" 
                         LineHeight="160" 
                         LineSpacing="5"
                         MinItemSpacing="5"/>
    </ItemsView.Layout>
</ItemsView>

각 항목의 높이가 같지만 너비는 사진의 가로 세로 비율의 원래 크기에 따라 달라지는 줄 바른 흐름 레이아웃에 표시된 사진 컬렉션입니다.

LinedFlowLayout은 다음을 제어하는 속성을 제공합니다.

생성자

LinedFlowLayout()

LinedFlowLayout 클래스의 새 instance 초기화합니다.

속성

ActualLineHeight

선의 유효 고정 높이를 가져옵니다.

ActualLineHeightProperty

ActualLineHeight 종속성 속성을 식별합니다.

Dispatcher

항상 Windows 앱 SDK 앱에서 를 반환 null 합니다. 대신 DispatcherQueue 를 사용합니다.

(다음에서 상속됨 DependencyObject)
DispatcherQueue

DispatcherQueue 이 개체가 연결된 을 가져옵니다. 는 DispatcherQueue 코드가 비 UI 스레드에 의해 시작되더라도 UI 스레드에서 에 액세스할 DependencyObject 수 있는 기능을 나타냅니다.

(다음에서 상속됨 DependencyObject)
IndexBasedLayoutOrientation

원본 컬렉션의 인덱스 기반 항목이 배치되는 방향(있는 경우)을 가져옵니다.

(다음에서 상속됨 Layout)
ItemsJustification

항목이 가로 축에 정렬되는 방식을 나타내는 값을 가져오거나 설정합니다.

ItemsJustificationProperty

ItemsJustification 종속성 속성을 식별합니다.

ItemsStretch

사용 가능한 공간을 채우기 위해 항목의 크기를 지정하는 방법을 나타내는 값을 가져오거나 설정합니다.

ItemsStretchProperty

ItemsStretch 종속성 속성을 식별합니다.

LineHeight

선 고정 높이를 가져오거나 설정합니다.

LineHeightProperty

LineHeight 종속성 속성을 식별합니다.

LineSpacing

항목 간의 세로 공간을 가져오거나 설정합니다.

LineSpacingProperty

LineSpacing 종속성 속성을 식별합니다.

MinItemSpacing

가로 축의 항목 사이의 최소 공간을 가져오거나 설정합니다.

MinItemSpacingProperty

MinItemSpacing 종속성 속성을 식별합니다.

RequestedRangeLength

ItemsInfoRequested 이벤트를 통해 제공된 크기 조정 정보를 사용하여 현재 항목 수를 가져옵니다.

RequestedRangeStartIndex

ItemsInfoRequested 이벤트를 통해 제공된 크기 조정 정보를 사용하여 현재 항목의 가장 작은 인덱스 를 가져옵니다. -1 값은 의 크기 조정 정보가 ItemsInfoRequested 사용되지 않음을 나타냅니다.

메서드

Arrange(LayoutContext, Size)

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

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

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

(다음에서 상속됨 VirtualizingLayout)
ClearValue(DependencyProperty)

종속성 속성의 로컬 값을 지웁니다.

(다음에서 상속됨 DependencyObject)
CreateDefaultItemTransitionProvider()

모든 요소에 대해 동일한 높이를 사용하여 래핑 레이아웃에서 요소를 왼쪽에서 오른쪽으로 순차적으로 배치한 다음 위쪽에서 아래쪽으로 배치하는 컨트롤을 나타냅니다.

(다음에서 상속됨 Layout)
GetAnimationBaseValue(DependencyProperty)

애니메이션이 활성화되지 않은 경우에 적용되는 종속성 속성에 대해 설정된 기본 값을 반환합니다.

(다음에서 상속됨 DependencyObject)
GetValue(DependencyProperty)

DependencyObject에서 종속성 속성의 현재 유효 값을 반환합니다.

(다음에서 상속됨 DependencyObject)
InitializeForContext(LayoutContext)

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

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

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

(다음에서 상속됨 VirtualizingLayout)
InvalidateArrange()

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

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

LinedFlowLayout 해당 항목의 리플로를 수행하도록 합니다.

InvalidateMeasure()

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

(다음에서 상속됨 Layout)
LockItemToLine(Int32)

제공된 인덱스가 있는 항목이 속한 줄의 인덱스를 검색합니다. 그런 다음 ItemsUnlocked 이벤트가 발생할 때까지 해당 항목이 반환된 줄에 표시되도록 보장됩니다.

Measure(LayoutContext, Size)

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

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

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

(다음에서 상속됨 VirtualizingLayout)
OnItemsChangedCore(VirtualizingLayoutContext, Object, NotifyCollectionChangedEventArgs)

컨테이너 요소(ItemsSource)에 할당된 데이터 컬렉션이 변경된 경우 레이아웃에 알 수 있습니다.

(다음에서 상속됨 VirtualizingLayout)
ReadLocalValue(DependencyProperty)

로컬 값이 설정된 경우 종속성 속성의 로컬 값을 반환합니다.

(다음에서 상속됨 DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

DependencyObject instance 특정 DependencyProperty에 대한 변경 내용을 수신 대기하기 위한 알림 함수를 등록합니다.

(다음에서 상속됨 DependencyObject)
SetIndexBasedLayoutOrientation(IndexBasedLayoutOrientation)

IndexBasedLayoutOrientation 속성의 값을 설정합니다.

(다음에서 상속됨 Layout)
SetValue(DependencyProperty, Object)

DependencyObject에 대한 종속성 속성의 로컬 값을 설정합니다.

(다음에서 상속됨 DependencyObject)
UninitializeForContext(LayoutContext)

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

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

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

(다음에서 상속됨 VirtualizingLayout)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

RegisterPropertyChangedCallback을 호출하여 이전에 등록된 변경 알림을 취소합니다.

(다음에서 상속됨 DependencyObject)

이벤트

ArrangeInvalidated

정렬 상태(레이아웃)가 무효화된 경우에 발생합니다.

(다음에서 상속됨 Layout)
ItemsInfoRequested

현재 LinedFlowLayout 스크롤 뷰포트 안팎의 항목에 대한 정보 크기 조정이 필요한 경우에 발생합니다.

ItemsUnlocked

LockItemToLine 메서드 호출을 통해 특정 줄에 잠긴 항목이 다시 잠금 해제될 때마다 발생합니다.

MeasureInvalidated

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

(다음에서 상속됨 Layout)

적용 대상

추가 정보