LinedFlowLayout Klasse

Definition

Stellt ein Steuerelement dar, das Elemente sequenziell von links nach rechts positioniert, dann von oben nach unten in einem Umbruchlayout, wobei für alle Elemente dieselbe Höhe verwendet wird.

/// [Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallback(enable=true)]
/// [Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodName(value="OnPropertyChanged")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.XamlContract, 327680)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class LinedFlowLayout : VirtualizingLayout
[Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallback(enable=true)]
[Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodName(value="OnPropertyChanged")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.XamlContract), 327680)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class LinedFlowLayout : VirtualizingLayout
Public Class LinedFlowLayout
Inherits VirtualizingLayout
Vererbung
Object IInspectable DependencyObject Layout VirtualizingLayout LinedFlowLayout
Attribute
Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackAttribute Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodNameAttribute ContractVersionAttribute MarshalingBehaviorAttribute ThreadingAttribute

Hinweise

Das LinedFlowLayout positioniert Elemente der Reihe nach von links nach rechts und dann von oben nach unten in einem Umschlag-Layout. Verwenden Sie dieses Layout, um eine Elementauflistung anzuzeigen, in der die Elemente eine feste Höhe, aber eine variable Breite aufweisen. Wir empfehlen dies für bildbasierte Sammlungen. Dieses Layout verfügt auch über integrierte Animationen, die wiedergegeben werden, wenn der Sammlung Elemente hinzugefügt oder entfernt werden und die Größe der Ansicht geändert wird.

Wenn Sie ein LinedFlowLayout verwenden möchten, legen Sie es als Wert für die ItemsView.Layout - oder ItemsRepeater.Layout-Eigenschaften fest.

Hier sehen Sie ein ItemsView-Steuerelement , das eine Sammlung von Fotos in einem linienlinienlinien-Flusslayout anzeigt.

<ItemsView Width="500" Height="400" HorizontalAlignment="Left"
           ItemTemplate="{StaticResource LinedFlowLayoutItemTemplate}">
    <ItemsView.Layout>
        <LinedFlowLayout ItemsStretch="Fill" 
                         LineHeight="160" 
                         LineSpacing="5"
                         MinItemSpacing="5"/>
    </ItemsView.Layout>
</ItemsView>

Eine Sammlung von Fotos, die in einem linienorientierten Flusslayout angezeigt werden, wobei jedes Element die gleiche Höhe aufweist, die Breite variiert jedoch je nach originaler Größe des Seitenverhältnisses des Fotos.

LinedFlowLayout bietet Eigenschaften zum Steuern:

Konstruktoren

Name Beschreibung
LinedFlowLayout()

Initialisiert eine neue Instanz der LinedFlowLayout-Klasse .

Eigenschaften

Name Beschreibung
ActualLineHeight

Ruft effektive feste Höhe der Linien ab.

ActualLineHeightProperty

Identifies the ActualLineHeight dependency property.

Dispatcher

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

(Geerbt von DependencyObject)
DispatcherQueue

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

(Geerbt von DependencyObject)
IndexBasedLayoutOrientation

Ruft die Ausrichtung (falls vorhanden) ab, in der Elemente basierend auf ihrem Index in der Quellauflistung angeordnet sind.

(Geerbt von Layout)
ItemsJustification

Dient zum Abrufen oder Festlegen eines Werts, der angibt, wie Elemente auf der horizontalen Achse ausgerichtet werden.

ItemsJustificationProperty

Identifies the ItemsJustification dependency property.

ItemsStretch

Dient zum Abrufen oder Festlegen eines Werts, der angibt, wie Elemente angepasst werden, um den verfügbaren Platz auszufüllen.

ItemsStretchProperty

Identifies the ItemsStretch dependency property.

LineHeight

Ruft die Linien mit fester Höhe ab oder legt sie fest.

LineHeightProperty

Identifies the LineHeight dependency property.

LineSpacing

Dient zum Abrufen oder Festlegen des vertikalen Abstands zwischen Elementen.

LineSpacingProperty

Identifies the LineSpacing dependency property.

MinItemSpacing

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

MinItemSpacingProperty

Identifies the MinItemSpacing dependency property.

RequestedRangeLength

Ruft die Anzahl der Elemente ab, die derzeit größeninformationen verwenden, die über das ItemsInfoRequested -Ereignis bereitgestellt werden.

RequestedRangeStartIndex

Ruft den kleinsten Index der Elemente ab, die derzeit Größeninformationen verwenden, die über das ItemsInfoRequested -Ereignis bereitgestellt werden. Ein Wert von -1 gibt an, dass keine Größeninformationen ItemsInfoRequested verwendet werden.

Methoden

Name Beschreibung
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)

Wenn sie in einer abgeleiteten Klasse implementiert wird, wird das Verhalten für den Layoutdurchlauf "Anordnen" bereitgestellt. 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()

Stellt ein Steuerelement dar, das Elemente sequenziell von links nach rechts positioniert, dann von oben nach unten in einem Umbruchlayout, wobei für alle Elemente dieselbe Höhe verwendet wird.

(Geerbt von Layout)
GetAnimationBaseValue(DependencyProperty)

Gibt einen Basiswert zurück, der für eine Abhängigkeitseigenschaft eingerichtet wurde, was in Fällen angewendet wird, 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 Containerstatus, den das Layout benötigt, wenn es an einen UIElement-Container angefügt ist.

(Geerbt von Layout)
InitializeForContextCore(VirtualizingLayoutContext)

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, initialisiert das Layout jeden einzelnen Containerstatus, der zum Anfügen an einen UIElement-Container erforderlich ist.

(Geerbt von VirtualizingLayout)
InvalidateArrange()

Ungültiger Anordnungszustand (Layout) für alle UIElement-Container, die auf dieses Layout verweisen. Nach der Ungültigheit wird das UIElement das Layout aktualisiert, das asynchron auftritt.

(Geerbt von Layout)
InvalidateItemsInfo()

Bewirkt, dass der LinedFlowLayout Umbruch der Elemente erfolgt.

InvalidateMeasure()

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

(Geerbt von Layout)
LockItemToLine(Int32)

Ruft den Index der Zeile ab, zu der das Element mit dem bereitgestellten Index gehört. Dieses Element wird dann garantiert in der zurückgegebenen Zeile angezeigt, bis das ItemsUnlocked-Ereignis ausgelöst wird.

Measure(LayoutContext, Size)

Schlägt eine DesiredSize für ein Containerelement vor. Ein Containerelement, das angefügte Layouts unterstützt, sollte diese Methode aus ihren eigenen MeasureOverride-Implementierungen aufrufen, um eine rekursive Layoutaktualisierung zu bilden. Das angefügte Layout wird erwartet, dass das Measure für jedes uiElement-Element des Containers aufgerufen wird.

(Geerbt von Layout)
MeasureOverride(VirtualizingLayoutContext, Size)

Stellt das Verhalten für den "Measure"-Pass 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 wird.

(Geerbt von DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registriert eine Benachrichtigungsfunktion, um Änderungen an einer bestimmten DependencyProperty für diese DependencyObject-Instanz zu überwachen.

(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 alle Zustände, die das Layout zuvor im UIElement-Container gespeichert hat.

(Geerbt von Layout)
UninitializeForContextCore(VirtualizingLayoutContext)

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt werden, werden alle Zustände entfernt, die 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

Name Beschreibung
ArrangeInvalidated

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

(Geerbt von Layout)
ItemsInfoRequested

Tritt auf, wenn die LinedFlowLayout Größeninformationen für Elemente in und um den aktuellen Bildlauf-Viewport benötigt werden.

ItemsUnlocked

Tritt auf, wenn Elemente, die durch Aufrufe der LockItemToLine-Methode in bestimmte Zeilen gesperrt wurden, wieder entsperrt werden.

MeasureInvalidated

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

(Geerbt von Layout)

Gilt für:

Weitere Informationen