Langage

LinedFlowLayout Classe

Définition

Représente un contrôle qui positionne les éléments de manière séquentielle de gauche à droite, puis de haut en bas, dans une disposition de création de package de restrictions, à l’aide de la même hauteur pour tous les éléments.

/// [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
Héritage
Object IInspectable DependencyObject Layout VirtualizingLayout LinedFlowLayout
Attributs
Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackAttribute Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodNameAttribute ContractVersionAttribute MarshalingBehaviorAttribute ThreadingAttribute

Remarques

LinedFlowLayout positionne les éléments de manière séquentielle de gauche à droite, puis de haut en bas, dans une disposition de wrapping. Utilisez cette disposition pour afficher une collection d’éléments où les éléments ont une hauteur fixe, mais une largeur variable. Nous vous recommandons de le faire pour les collections basées sur des images. Cette disposition comporte également des animations intégrées qui s’exécutent lorsque la collection comporte des éléments ajoutés ou supprimés, et lorsque l’affichage est redimensionné.

Pour utiliser un LinedFlowLayout, définissez-le comme valeur pour les propriétés ItemsView.Layout ou ItemsRepeater.Layout .

Voici un contrôle ItemsView qui montre une collection de photos dans une disposition de flux alignée.

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

Collection de photos affichées dans une disposition de flux alignée où chaque élément est la même hauteur, mais la largeur varie en fonction de la taille d’origine du rapport d’aspect de la photo.

LinedFlowLayout fournit des propriétés pour contrôler :

Constructeurs

Nom Description
LinedFlowLayout()

Initialise une nouvelle instance de la classe LinedFlowLayout .

Propriétés

Nom Description
ActualLineHeight

Obtient une hauteur fixe effective des lignes.

ActualLineHeightProperty

Identifie la propriété de dépendance ActualLineHeight .

Dispatcher

Retourne null toujours dans une application du Kit de développement logiciel (SDK) d’application Windows. Utilisez DispatcherQueue à la place.

(Hérité de DependencyObject)
DispatcherQueue

Obtient le DispatcherQueue résultat auquel cet objet est associé. Représente DispatcherQueue une installation qui peut accéder au DependencyObject thread d’interface utilisateur même si le code est initié par un thread non-interface utilisateur.

(Hérité de DependencyObject)
IndexBasedLayoutOrientation

Obtient l’orientation, le cas échéant, dans laquelle les éléments sont disposés en fonction de leur index dans la collection source.

(Hérité de Layout)
ItemsJustification

Obtient ou définit une valeur qui indique comment les éléments sont alignés sur l’axe horizontal.

ItemsJustificationProperty

Identifie la propriété de dépendance ItemsJustification .

ItemsStretch

Obtient ou définit une valeur qui indique la taille des éléments pour remplir l’espace disponible.

ItemsStretchProperty

Identifie la propriété de dépendance ItemsStretch .

LineHeight

Obtient ou définit la hauteur fixe des lignes.

LineHeightProperty

Identifie la propriété de dépendance LineHeight .

LineSpacing

Obtient ou définit l’espace vertical entre les éléments.

LineSpacingProperty

Identifie la propriété de dépendance LineSpacing .

MinItemSpacing

Obtient ou définit l’espace minimal entre les éléments de l’axe horizontal.

MinItemSpacingProperty

Identifie la propriété de dépendance MinItemSpacing .

RequestedRangeLength

Obtient le nombre d’éléments qui utilisent actuellement des informations de dimensionnement fournies via l’événement ItemsInfoRequested .

RequestedRangeStartIndex

Obtient le plus petit index des éléments qui utilisent actuellement les informations de dimensionnement fournies via l’événement ItemsInfoRequested . Une valeur de -1 indique qu’aucune information de dimensionnement n’est ItemsInfoRequested utilisée.

Méthodes

Nom Description
Arrange(LayoutContext, Size)

Positionne les éléments enfants et détermine une taille pour un UIElement de conteneur. Les éléments de conteneur qui prennent en charge les dispositions jointes doivent appeler cette méthode à partir de leurs implémentations de remplacement de disposition pour former une mise à jour de disposition récursive.

(Hérité de Layout)
ArrangeOverride(VirtualizingLayoutContext, Size)

En cas d’implémentation dans une classe dérivée, fournit le comportement de la passe de disposition « Arrange ». Les classes peuvent remplacer cette méthode pour définir leur propre comportement de passe « Arrange ».

(Hérité de VirtualizingLayout)
ClearValue(DependencyProperty)

Efface la valeur locale d’une propriété de dépendance.

(Hérité de DependencyObject)
CreateDefaultItemTransitionProvider()

Représente un contrôle qui positionne les éléments de manière séquentielle de gauche à droite, puis de haut en bas, dans une disposition de création de package de restrictions, à l’aide de la même hauteur pour tous les éléments.

(Hérité de Layout)
GetAnimationBaseValue(DependencyProperty)

Retourne toute valeur de base établie pour une propriété de dépendance, qui s’applique dans les cas où une animation n’est pas active.

(Hérité de DependencyObject)
GetValue(DependencyProperty)

Retourne la valeur effective actuelle d’une propriété de dépendance à partir d’un DependencyObject.

(Hérité de DependencyObject)
InitializeForContext(LayoutContext)

Initialise tout état par conteneur dont la disposition a besoin lorsqu’elle est attachée à un conteneur UIElement.

(Hérité de Layout)
InitializeForContextCore(VirtualizingLayoutContext)

En cas de substitution dans une classe dérivée, initialise tout état par conteneur requis par disposition lorsqu’elle est attachée à un conteneur UIElement.

(Hérité de VirtualizingLayout)
InvalidateArrange()

Invalide l’état d’organisation (disposition) pour tous les conteneurs UIElement qui référencent cette disposition. Après l’invalidation, uiElement aura sa disposition mise à jour, qui se produit de manière asynchrone.

(Hérité de Layout)
InvalidateItemsInfo()

Provoque le LinedFlowLayout reflow de ses éléments.

InvalidateMeasure()

Invalide l’état de mesure (disposition) pour tous les conteneurs UIElement qui référencent cette disposition.

(Hérité de Layout)
LockItemToLine(Int32)

Récupère l’index de la ligne à laquelle appartient l’élément avec l’index fourni. Cet élément est ensuite garanti d’apparaître dans la ligne retournée jusqu’à ce que l’événement ItemsUnlocked soit déclenché.

Measure(LayoutContext, Size)

Suggère un DesiredSize pour un élément conteneur. Un élément conteneur qui prend en charge les dispositions jointes doit appeler cette méthode à partir de leurs propres implémentations MeasureOverride pour former une mise à jour de disposition récursive. La disposition jointe est censée appeler la mesure pour chacun des enfants UIElement du conteneur.

(Hérité de Layout)
MeasureOverride(VirtualizingLayoutContext, Size)

Fournit le comportement de la passe « Mesure » du cycle de disposition. Les classes peuvent remplacer cette méthode pour définir leur propre comportement de passe « Measure ».

(Hérité de VirtualizingLayout)
OnItemsChangedCore(VirtualizingLayoutContext, Object, NotifyCollectionChangedEventArgs)

Avertit la disposition lorsque la collection de données affectée à l’élément conteneur (ItemsSource) a changé.

(Hérité de VirtualizingLayout)
ReadLocalValue(DependencyProperty)

Retourne la valeur locale d’une propriété de dépendance, si une valeur locale est définie.

(Hérité de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Inscrit une fonction de notification pour écouter les modifications apportées à une dependencyProperty spécifique sur cette instance DependencyObject .

(Hérité de DependencyObject)
SetIndexBasedLayoutOrientation(IndexBasedLayoutOrientation)

Définit la valeur de la IndexBasedLayoutOrientation propriété.

(Hérité de Layout)
SetValue(DependencyProperty, Object)

Définit la valeur locale d’une propriété de dépendance sur un DependencyObject.

(Hérité de DependencyObject)
UninitializeForContext(LayoutContext)

Supprime tout état de disposition précédemment stocké sur le conteneur UIElement.

(Hérité de Layout)
UninitializeForContextCore(VirtualizingLayoutContext)

En cas de substitution dans une classe dérivée, supprime tout état de disposition précédemment stocké sur le conteneur UIElement.

(Hérité de VirtualizingLayout)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Annule une notification de modification qui a été précédemment inscrite en appelant RegisterPropertyChangedCallback.

(Hérité de DependencyObject)

Événements

Nom Description
ArrangeInvalidated

Se produit lorsque l’état d’organisation (disposition) a été invalidé.

(Hérité de Layout)
ItemsInfoRequested

Se produit lorsque les LinedFlowLayout besoins en informations de dimensionnement pour les éléments dans et autour de la fenêtre d’affichage de défilement actuelle.

ItemsUnlocked

Se produit chaque fois que les éléments qui avaient été verrouillés dans des lignes spécifiques par le biais d’appels à la méthode LockItemToLine sont déverrouillés à nouveau.

MeasureInvalidated

Se produit lorsque l’état de mesure (disposition) a été invalidé.

(Hérité de Layout)

S’applique à

Voir aussi