다음을 통해 공유


ListViewCachingStrategy 열거형

정의

ListView에 대한 캐싱 전략을 열거합니다.

이 열거형은 멤버 값의 비트 조합을 지원합니다.

public enum class ListViewCachingStrategy
[System.Flags]
public enum ListViewCachingStrategy
[<System.Flags>]
type ListViewCachingStrategy = 
Public Enum ListViewCachingStrategy
상속
ListViewCachingStrategy
특성

필드

RetainElement 0

목록 보기의 ItemsSource 속성에 있는 모든 항목에 대해 단일 고유 요소가 DataTemplate에서 구성됨을 나타냅니다.

RecycleElement 1

불필요한 셀이 필요한 셀의 바인딩 컨텍스트로 업데이트됨을 나타냅니다.

RecycleElementAndDataTemplate 3

RecycleElement에 의해 지정된 동작 외에도 DataTemplateSelector에서 선택된 DataTemplate 개체가 데이터 템플릿 형식에 의해 캐시되었음을 나타냅니다.

설명

애플리케이션 개발자는 목록 뷰에서 목록 셀을 재활용하여 ListView 메모리 사용 공간을 최소화하고 실행 속도를 최소화할지, 아니면 목록의 모든 항목에 대한 셀을 생성할지 여부를 결정할 때 이러한 값 중 하나를 지정할 수 있습니다. 현재 기본 동작은 필요하지 않은 경우 생성된 셀에 항목 데이터를 유지하는 것입니다. (예를 들어 화면이 너무 멀어 표시가 임박하지 않은 경우 항목이 필요하지 않습니다.) 이 동작은 값에 RetainElement해당합니다. 성능상의 이유로 향후 릴리스에서 기본 동작이 변경 RecycleElement 될 가능성이 높습니다. 한편, 메모리 및 성능상의 이유로 앱 개발자는 새 목록 보기를 생성할 때 지정 RecycleElement 해야 합니다.

성능 이점 RecycleElement 은 애플리케이션 개발자에게 목록 보기를 초기화하기 위한 XAML 구문 바로 가기를 제공했을 정도로 매우 좋습니다. 생성자에 대한 ListView(ListViewCachingStrategy) 매개 변수를 지정하는 구문 대신 x:TypeArguments Microsoft.Maui.Controls용 XAML은 생성자의 캐싱 전략 인수에 해당하는 존재하지 않는 속성에 대한 XAML 특성을 제공합니다. 애플리케이션 개발자는 (기본 설정) 또는 RetainElement 값 중 RecycleElement 하나에 특성을 설정 CachingStrategy 하여 캐싱 전략을 선택할 수 있습니다. 예시:

<ListView CachingStrategy="RecycleElement" >
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<!-- ... -->
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>

참고: 개발자가 지정 RecycleElementOnElementChanged 하면 셀을 재활용할 때 이벤트가 발생하지 않습니다. 대신 셀이 보존되고 바인딩 컨텍스트가 사용 가능한 셀 OnElementPropertyChanged 의 컨텍스트로 업데이트되면 해당 속성 값이 변경되고 이벤트가 발생합니다. 애플리케이션 개발자는 올바른 이벤트를 수신 대기해야 하며, 이후 릴리스에서 기본 동작이 변경 RecycleElement 될 경우 렌더러를 업데이트해야 합니다.

참고: UWP 플랫폼은 항상 캐싱을 사용하여 성능을 향상시키기 때문에 무시됩니다 RetainElement. 따라서 개발자가 데이터 바인딩을 사용하지 않도록 선택한 경우 항상 지정된 것처럼 RecycleElement 동작하기 때문에 UWP에서 셀 데이터를 업데이트하는 데 사용해야 OnBindingContextChanged() 합니다.

적용 대상