VirtualizingLayout 类

定义

表示对象的基类,该对象为主机调整大小并排列子元素并支持虚拟化。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) 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 VirtualizingLayout : 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 VirtualizingLayout : 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 VirtualizingLayout : 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 VirtualizingLayout : Layout
Public Class VirtualizingLayout
Inherits Layout
继承
VirtualizingLayout
派生
属性
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 分支)。

注解

VirtualizingLayout 是支持虚拟化的布局的基类。 可以使用提供的派生类之一,也可以从该类继承来创建自己的布局。 提供的具体虚拟化布局类为 StackLayoutUniformGridLayout

构造函数

VirtualizingLayout()

初始化 VirtualizingLayout 类的新实例。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

方法

Arrange(LayoutContext, Size)

定位子元素并确定容器 UIElement 的大小。 支持附加布局的容器元素应从其布局替代实现中调用此方法,以形成递归布局更新。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

(继承自 Layout)
ArrangeOverride(VirtualizingLayoutContext, Size)

在派生类中实现时,为布局的“排列”传递提供行为。 类可以重写此方法,以定义自己的“排列”传递行为。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

InitializeForContext(LayoutContext)

初始化布局附加到 UIElement 容器时所需的任何每个容器状态。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

(继承自 Layout)
InitializeForContextCore(VirtualizingLayoutContext)

在派生类中重写时,初始化布局附加到 UIElement 容器时所需的任何每个容器状态。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

InvalidateArrange()

使引用此布局的所有 UIElement 容器的排列状态 (布局) 无效。 失效后,UIElement 将更新其布局,这以异步方式发生。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

(继承自 Layout)
InvalidateMeasure()

使引用此布局的所有 UIElement 容器的度量状态 (布局) 无效。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

(继承自 Layout)
Measure(LayoutContext, Size)

建议容器元素的 DesiredSize。 支持附加布局的容器元素应从其自己的 MeasureOverride 实现中调用此方法,以形成递归布局更新。 附加的布局应为每个容器的 UIElement 子级调用 Measure。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

(继承自 Layout)
MeasureOverride(VirtualizingLayoutContext, Size)

为布局周期的“度量”传递提供行为。 类可以重写此方法以定义其自己的“Measure”传递行为。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

OnItemsChangedCore(VirtualizingLayoutContext, Object, NotifyCollectionChangedEventArgs)

当分配给容器元素的数据收集 (ItemsSource) 发生更改时通知布局。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

UninitializeForContext(LayoutContext)

删除以前存储在 UIElement 容器上的布局的任何状态。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

(继承自 Layout)
UninitializeForContextCore(VirtualizingLayoutContext)

在派生类中重写时,删除以前存储在 UIElement 容器上的布局的任何状态。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

事件

ArrangeInvalidated

当布局) 的排列状态 (无效时发生。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

(继承自 Layout)
MeasureInvalidated

当布局) 的度量状态 (无效时发生。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅) Windows 应用 SDK命名空间

(继承自 Layout)

适用于