Layout 类

定义

表示对象的基类,该对象调整主机的大小并排列子元素。

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

public ref class Layout : DependencyObject
/// [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 Layout : DependencyObject
/// [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 Layout : DependencyObject
[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 Layout : DependencyObject
[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 Layout : DependencyObject
Public Class Layout
Inherits DependencyObject
继承
派生
属性
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 分支)。

注解

不应直接使用或继承自 Layout 类。 而是继承自其派生类 NonVirtualizingLayoutVirtualizingLayout

提供的具体布局类为 StackLayoutUniformGridLayout

方法

Arrange(LayoutContext, Size)

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

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

InitializeForContext(LayoutContext)

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

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

InvalidateArrange()

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

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

InvalidateMeasure()

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

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

Measure(LayoutContext, Size)

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

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

UninitializeForContext(LayoutContext)

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

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

事件

ArrangeInvalidated

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

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

MeasureInvalidated

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

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

适用于

另请参阅