Freigeben über


UniformGridLayout Klasse

Definition

Positioniert Elemente sequenziell von links nach rechts oder von oben nach unten in einem Umbruchlayout.

/// [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
Vererbung
Object IInspectable DependencyObject Layout VirtualizingLayout UniformGridLayout
Attribute
Microsoft.UI.Xaml.CustomAttributes.MUXContractPropertyAttribute Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackAttribute Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodNameAttribute MarshalingBehaviorAttribute ThreadingAttribute VersionAttribute ContractVersionAttribute

Beispiele

Tipp

Weitere Informationen, Entwurfsanleitungen und Codebeispiele finden Sie unter ItemsRepeater.

Die WinUI 3-Katalog-App umfasst interaktive Beispiele für die meisten WinUI 3-Steuerelemente, -Features und -Funktionen. Rufen Sie die App aus dem Microsoft Store oder den Quellcode auf GitHub ab.

Das folgende Beispiel zeigt, wie die ItemsRepeater.Layout-Eigenschaft auf ein UniformGridLayout festgelegt wird.

<ItemsRepeater ItemsSource="{x:Bind Items}"
                    ItemTemplate="{StaticResource MyTemplate}">
    <ItemsRepeater.Layout>
        <UniformGridLayout MinItemWidth="200"
                                MinColumnSpacing="28"
                                ItemsJustification="SpaceAround"/>
    </ItemsRepeater.Layout>
</ItemsRepeater>

Hinweise

Elemente werden in der Reihenfolge von links nach rechts angeordnet, wenn die Ausrichtung ist Horizontal, und von oben nach unten angeordnet, wenn die Ausrichtung ist Vertical.

Jedes Element in einem UniformGridLayout ist gleich groß.

UniformGridLayout unterstützt die Virtualisierung, wenn sie an einen Host angefügt wird, der die Virtualisierung unterstützt.

Konstruktoren

UniformGridLayout()

Initialisiert eine neue instance der UniformGridLayout-Klasse.

Eigenschaften

Dispatcher

Gibt immer in einer Windows App SDK-App zurücknull. Verwenden Sie stattdessen DispatcherQueue .

(Geerbt von DependencyObject)
DispatcherQueue

Ruft den DispatcherQueue ab, dem dieses Objekt zugeordnet ist. Stellt DispatcherQueue eine Funktion dar, die auf den DependencyObject im UI-Thread zugreifen kann, auch wenn der Code von einem Nicht-UI-Thread initiiert wird.

(Geerbt von DependencyObject)
IndexBasedLayoutOrientation

Ruft ggf. die Ausrichtung ab, in der Elemente basierend auf ihrem Index in der Quellauflistung angeordnet werden.

(Geerbt von Layout)
ItemsJustification

Ruft einen Wert ab, der angibt, wie Elemente auf der Nicht-Scroll- oder Nicht-Virtualisierungsachse ausgerichtet werden, oder legt diesen fest.

ItemsJustificationProperty

Identifiziert die ItemsJustification-Abhängigkeitseigenschaft .

ItemsStretch

Ruft einen Wert ab, der angibt, wie Elemente zum Ausfüllen des verfügbaren Speicherplatzes dimensionieren, oder legt diesen fest.

ItemsStretchProperty

Identifiziert die ItemsStretch-Abhängigkeitseigenschaft .

MaximumRowsOrColumns

Ruft die maximale Anzahl von Elementen ab, die pro Zeile oder Spalte gerendert werden, basierend auf der Ausrichtung von UniformGridLayout, oder legt diese fest.

MaximumRowsOrColumnsProperty

Identifiziert die Abhängigkeitseigenschaft MaximumRowsOrColumns .

MinColumnSpacing

Ruft den minimalen Abstand zwischen Elementen auf der horizontalen Achse ab oder legt diese fest.

MinColumnSpacingProperty

Identifiziert die MinColumnSpacing-Abhängigkeitseigenschaft .

MinItemHeight

Ruft die Mindesthöhe jedes Elements ab oder legt diese fest.

MinItemHeightProperty

Identifiziert die MinItemHeight-Abhängigkeitseigenschaft .

MinItemWidth

Ruft die Mindestbreite jedes Elements ab oder legt diese fest.

MinItemWidthProperty

Identifiziert die MinItemWidth-Abhängigkeitseigenschaft .

MinRowSpacing

Ruft den minimalen Abstand zwischen Elementen auf der vertikalen Achse ab oder legt diese fest.

MinRowSpacingProperty

Identifiziert die MinRowSpacing-Abhängigkeitseigenschaft .

Orientation

Ruft die Achse ab, entlang der Elemente angeordnet sind, oder legt diese fest.

OrientationProperty

Identifiziert die Orientation-Abhängigkeitseigenschaft.

Methoden

Arrange(LayoutContext, Size)

Positioniert untergeordnete Elemente und bestimmt eine Größe für ein Container-UIElement. Containerelemente, die angefügte Layouts unterstützen, sollten diese Methode aus ihren Layoutüberschreibungsimplementierungen aufrufen, um eine rekursive Layoutaktualisierung zu bilden.

(Geerbt von Layout)
ArrangeOverride(VirtualizingLayoutContext, Size)

Stellt bei Implementierung in einer abgeleiteten Klasse das Verhalten für den Layoutdurchlauf "Arrange" bereit. Klassen können diese Methode überschreiben, um ihr eigenes "Arrange"-Passverhalten zu definieren.

(Geerbt von VirtualizingLayout)
ClearValue(DependencyProperty)

Löscht den lokalen Wert einer Abhängigkeitseigenschaft.

(Geerbt von DependencyObject)
CreateDefaultItemTransitionProvider()

Positioniert Elemente sequenziell von links nach rechts oder von oben nach unten in einem Umbruchlayout.

(Geerbt von Layout)
GetAnimationBaseValue(DependencyProperty)

Gibt einen beliebigen Basiswert zurück, der für eine Abhängigkeitseigenschaft eingerichtet wurde, der in Fällen gilt, in denen eine Animation nicht aktiv ist.

(Geerbt von DependencyObject)
GetValue(DependencyProperty)

Gibt den aktuellen effektiven Wert einer Abhängigkeitseigenschaft aus einem DependencyObject zurück.

(Geerbt von DependencyObject)
InitializeForContext(LayoutContext)

Initialisiert jeden einzelnen Containerzustand, den das Layout benötigt, wenn es an einen UIElement-Container angefügt wird.

(Geerbt von Layout)
InitializeForContextCore(VirtualizingLayoutContext)

Initialisiert beim Überschreiben in einer abgeleiteten Klasse jeden Zustand pro Container, den das Layout benötigt, wenn es an einen UIElement-Container angefügt wird.

(Geerbt von VirtualizingLayout)
InvalidateArrange()

Ungültig wird der Anordnungszustand (Layout) für alle UIElement-Container, die auf dieses Layout verweisen. Nach der Ungültigkeit wird das Layout des UIElement aktualisiert, was asynchron erfolgt.

(Geerbt von Layout)
InvalidateMeasure()

Ungültig wird der Messzustand (Layout) für alle UIElement-Container, die auf dieses Layout verweisen.

(Geerbt von Layout)
Measure(LayoutContext, Size)

Schlägt einen DesiredSize für ein Containerelement vor. Ein Containerelement, das angefügte Layouts unterstützt, sollte diese Methode aus eigenen MeasureOverride-Implementierungen aufrufen, um ein rekursives Layoutupdate zu bilden. Es wird erwartet, dass das angefügte Layout das Measure für jedes der untergeordneten UIElement-Elemente des Containers aufruft.

(Geerbt von Layout)
MeasureOverride(VirtualizingLayoutContext, Size)

Stellt das Verhalten für den Durchlauf "Measure" des Layoutzyklus bereit. Klassen können diese Methode überschreiben, um ihr eigenes "Measure"-Passverhalten zu definieren.

(Geerbt von VirtualizingLayout)
OnItemsChangedCore(VirtualizingLayoutContext, Object, NotifyCollectionChangedEventArgs)

Benachrichtigt das Layout, wenn sich die dem Containerelement (ItemsSource) zugewiesene Datensammlung geändert hat.

(Geerbt von VirtualizingLayout)
ReadLocalValue(DependencyProperty)

Gibt den lokalen Wert einer Abhängigkeitseigenschaft zurück, wenn ein lokaler Wert festgelegt ist.

(Geerbt von DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registriert eine Benachrichtigungsfunktion zum Lauschen auf Änderungen an einer bestimmten DependencyProperty für dieses DependencyObject-instance.

(Geerbt von DependencyObject)
SetIndexBasedLayoutOrientation(IndexBasedLayoutOrientation)

Legt den Wert der IndexBasedLayoutOrientation-Eigenschaft fest.

(Geerbt von Layout)
SetValue(DependencyProperty, Object)

Legt den lokalen Wert einer Abhängigkeitseigenschaft für ein DependencyObject fest.

(Geerbt von DependencyObject)
UninitializeForContext(LayoutContext)

Entfernt jeden Zustand, den das Layout zuvor im UIElement-Container gespeichert hat.

(Geerbt von Layout)
UninitializeForContextCore(VirtualizingLayoutContext)

Entfernt beim Überschreiben in einer abgeleiteten Klasse jeden Zustand, den das Layout zuvor im UIElement-Container gespeichert hat.

(Geerbt von VirtualizingLayout)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Bricht eine Änderungsbenachrichtigung ab, die zuvor durch Aufrufen von RegisterPropertyChangedCallback registriert wurde.

(Geerbt von DependencyObject)

Ereignisse

ArrangeInvalidated

Tritt auf, wenn der Anordnungszustand (Layout) ungültig wurde.

(Geerbt von Layout)
MeasureInvalidated

Tritt auf, wenn der Messzustand (Layout) ungültig wurde.

(Geerbt von Layout)

Gilt für:

Weitere Informationen