UniformGridLayout Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Размещает элементы последовательно слева направо или сверху вниз в макете упаковки.
/// [Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
/// [Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallback(enable=true)]
/// [Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodName(value="OnPropertyChanged")]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Version(1)]
class UniformGridLayout : VirtualizingLayout
/// [Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallback(enable=true)]
/// [Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodName(value="OnPropertyChanged")]
/// [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 UniformGridLayout : VirtualizingLayout
[Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
[Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallback(enable=true)]
[Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodName(value="OnPropertyChanged")]
[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 UniformGridLayout : VirtualizingLayout
[Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallback(enable=true)]
[Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodName(value="OnPropertyChanged")]
[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 UniformGridLayout : VirtualizingLayout
Public Class UniformGridLayout
Inherits VirtualizingLayout
- Наследование
- Атрибуты
-
Microsoft.UI.Xaml.CustomAttributes.MUXContractPropertyAttribute Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackAttribute Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodNameAttribute MarshalingBehaviorAttribute ThreadingAttribute VersionAttribute ContractVersionAttribute
Примеры
Совет
Дополнительные сведения, рекомендации по проектированию и примеры кода см. в разделе ItemsRepeater.
Приложение "Коллекция WinUI 3" содержит интерактивные примеры большинства элементов управления, функций и функций WinUI 3. Получите приложение из Microsoft Store или получите исходный код в GitHub.
В следующем примере показано, как задать свойству ItemsRepeater.Layout значение UniformGridLayout.
<ItemsRepeater ItemsSource="{x:Bind Items}"
ItemTemplate="{StaticResource MyTemplate}">
<ItemsRepeater.Layout>
<UniformGridLayout MinItemWidth="200"
MinColumnSpacing="28"
ItemsJustification="SpaceAround"/>
</ItemsRepeater.Layout>
</ItemsRepeater>
Комментарии
Элементы размещаются слева направо, если ориентация имеет значение Horizontal
, и размещаются сверху вниз, если ориентация имеет значение Vertical
.
Каждый элемент в UniformGridLayout имеет одинаковый размер.
UniformGridLayout поддерживает виртуализацию при подключении к узлу, поддерживающму виртуализацию.
Конструкторы
UniformGridLayout() |
Инициализирует новый экземпляр класса UniformGridLayout . |
Свойства
Dispatcher |
Всегда возвращается |
DispatcherQueue |
Возвращает объект , |
IndexBasedLayoutOrientation |
Возвращает ориентацию, если она есть, в которой элементы размещаются на основе их индекса в исходной коллекции. (Унаследовано от Layout) |
ItemsJustification |
Возвращает или задает значение, указывающее, как элементы выравниваются по оси без прокрутки или без виртуализации. |
ItemsJustificationProperty |
Определяет свойство зависимости ItemsJustification . |
ItemsStretch |
Возвращает или задает значение, указывающее размер элементов для заполнения доступного пространства. |
ItemsStretchProperty |
Определяет свойство зависимости ItemsStretch . |
MaximumRowsOrColumns |
Возвращает или задает максимальное количество элементов, отображаемых для каждой строки или столбца, в зависимости от ориентации Объекта UniformGridLayout. |
MaximumRowsOrColumnsProperty |
Определяет свойство зависимости MaximumRowsOrColumns . |
MinColumnSpacing |
Возвращает или задает минимальное пространство между элементами на горизонтальной оси. |
MinColumnSpacingProperty |
Определяет свойство зависимости MinColumnSpacing . |
MinItemHeight |
Возвращает или задает минимальную высоту каждого элемента. |
MinItemHeightProperty |
Определяет свойство зависимости MinItemHeight . |
MinItemWidth |
Возвращает или задает минимальную ширину каждого элемента. |
MinItemWidthProperty |
Определяет свойство зависимости MinItemWidth . |
MinRowSpacing |
Возвращает или задает минимальное пространство между элементами на вертикальной оси. |
MinRowSpacingProperty |
Определяет свойство зависимости MinRowSpacing . |
Orientation |
Возвращает или задает ось, вдоль которой размещаются элементы. |
OrientationProperty |
Определяет свойство зависимости Orientation . |
Методы
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) |
InvalidateMeasure() |
Делает недействительным состояние измерения (макет) для всех контейнеров UIElement, ссылающихся на этот макет. (Унаследовано от Layout) |
Measure(LayoutContext, Size) |
Предлагает DesiredSize для элемента контейнера. Элемент контейнера, поддерживающий присоединенные макеты, должен вызывать этот метод из собственных реализаций MeasureOverride для формирования рекурсивного обновления макета. Ожидается, что присоединенный макет вызовет measure для каждого из дочерних элементов UIElement контейнера. (Унаследовано от Layout) |
MeasureOverride(VirtualizingLayoutContext, Size) |
Обеспечивает поведение для прохода "Measure" цикла макета. Классы могут переопределить этот метод, чтобы определить собственное поведение передачи "Measure". (Унаследовано от VirtualizingLayout) |
OnItemsChangedCore(VirtualizingLayoutContext, Object, NotifyCollectionChangedEventArgs) |
Уведомляет макет при изменении коллекции данных, назначенной элементу контейнера (ItemsSource). (Унаследовано от VirtualizingLayout) |
ReadLocalValue(DependencyProperty) |
Возвращает локальное значение свойства зависимостей, если задано локальное значение. (Унаследовано от DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Регистрирует функцию уведомления для прослушивания изменений определенной DependencyProperty в этом экземпляре DependencyObject . (Унаследовано от DependencyObject) |
SetIndexBasedLayoutOrientation(IndexBasedLayoutOrientation) |
Задает значение свойства |
SetValue(DependencyProperty, Object) |
Задает локальное значение свойства зависимостей для Объекта DependencyObject. (Унаследовано от DependencyObject) |
UninitializeForContext(LayoutContext) |
Удаляет все состояния макета, ранее хранящиеся в контейнере UIElement. (Унаследовано от Layout) |
UninitializeForContextCore(VirtualizingLayoutContext) |
При переопределении в производном классе удаляет все состояния макета, ранее хранящиеся в контейнере UIElement. (Унаследовано от VirtualizingLayout) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Отменяет уведомление об изменениях, которое было ранее зарегистрировано путем вызова метода RegisterPropertyChangedCallback. (Унаследовано от DependencyObject) |
События
ArrangeInvalidated |
Происходит, когда состояние размещения (макет) было признано недействительным. (Унаследовано от Layout) |
MeasureInvalidated |
Происходит, когда состояние измерения (макет) было признано недействительным. (Унаследовано от Layout) |