Поделиться через


Layout Класс

Определение

Представляет базовый класс для объекта , который масштабирует и упорядочивает дочерние элементы для узла.

Эта документация относится к WinUI 2 для UWP (для WinUI в Windows App SDK см. Windows App 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.

Если они не установлены, вы можете скачать коллекцию WinUI 3 и коллекцию WinUI 2 из Microsoft Store.

Исходный код можно также получить из GitHub (используйте главную ветвь для WinUI 3 и ветвь winui2 для WinUI 2).

Комментарии

Не следует использовать или наследовать от класса Layout напрямую. Вместо этого наследуйте от производных классов NonVirtualizingLayout или VirtualizingLayout.

Предоставляются конкретные классы макета StackLayout и UniformGridLayout.

Методы

Arrange(LayoutContext, Size)

Размещает дочерние элементы и определяет размер контейнера UIElement. Элементы контейнера, поддерживающие присоединенные макеты, должны вызывать этот метод из реализаций переопределения макета, чтобы сформировать рекурсивное обновление макета.

Эта документация относится к WinUI 2 для UWP (для WinUI в Windows App SDK см. Windows App SDK пространства имен).

InitializeForContext(LayoutContext)

Инициализирует любое состояние каждого контейнера, необходимое макету при его присоединении к контейнеру UIElement.

Эта документация относится к WinUI 2 для UWP (для WinUI в Windows App SDK см. Windows App SDK пространства имен).

InvalidateArrange()

Делает недействительным состояние упорядочения (макет) для всех контейнеров UIElement, ссылающихся на этот макет. После аннулирования макет UIElement будет обновлен, что происходит асинхронно.

Эта документация относится к WinUI 2 для UWP (для WinUI в Windows App SDK см. Windows App SDK пространства имен).

InvalidateMeasure()

Делает недействительным состояние измерения (макет) для всех контейнеров UIElement, ссылающихся на этот макет.

Эта документация относится к WinUI 2 для UWP (для WinUI в Windows App SDK см. Windows App SDK пространства имен).

Measure(LayoutContext, Size)

Предлагает DesiredSize для элемента контейнера. Элемент контейнера, поддерживающий присоединенные макеты, должен вызывать этот метод из собственных реализаций MeasureOverride, чтобы сформировать рекурсивное обновление макета. Присоединенный макет должен вызывать measure для каждого дочернего элемента UIElement контейнера.

Эта документация относится к WinUI 2 для UWP (для WinUI в Windows App SDK см. Windows App SDK пространства имен).

UninitializeForContext(LayoutContext)

Удаляет все состояния макета, ранее сохраненные в контейнере UIElement.

Эта документация относится к WinUI 2 для UWP (для WinUI в Windows App SDK см. Windows App SDK пространства имен).

События

ArrangeInvalidated

Происходит, когда состояние упорядочения (макет) стало недействительным.

Эта документация относится к WinUI 2 для UWP (для WinUI в Windows App SDK см. Windows App SDK пространства имен).

MeasureInvalidated

Происходит, когда состояние измерения (макет) признано недействительным.

Эта документация относится к WinUI 2 для UWP (для WinUI в Windows App SDK см. Windows App SDK пространства имен).

Применяется к

См. также раздел