LinedFlowLayout Classe

Definição

Representa um controle que posiciona os elementos sequencialmente da esquerda para a direita e, em seguida, de cima para baixo, em um layout de disposição, usando a mesma altura para todos os elementos.

/// [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
Herança
Object IInspectable DependencyObject Layout VirtualizingLayout LinedFlowLayout
Atributos
Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackAttribute Microsoft.UI.Xaml.CustomAttributes.MUXPropertyChangedCallbackMethodNameAttribute ContractVersionAttribute MarshalingBehaviorAttribute ThreadingAttribute

Comentários

O LinedFlowLayout posiciona os elementos sequencialmente da esquerda para a direita e, em seguida, de cima para baixo, em um layout de disposição. Use esse layout para exibir uma coleção de itens em que os itens têm uma altura fixa, mas uma largura variável. Recomendamos isso para coleções baseadas em imagem. Esse layout também tem animações internas que são reproduzidas quando a coleção tem itens adicionados ou removidos e quando a exibição é redimensionada.

Para usar um LinedFlowLayout, defina-o como um valor para as propriedades ItemsView.Layout ou ItemsRepeater.Layout .

Aqui está um controle ItemsView que mostra uma coleção de fotos em um layout de fluxo alinhado.

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

Uma coleção de fotos exibida em um layout de fluxo uniforme onde cada item tem a mesma altura, mas a largura varia de acordo com o tamanho original da relação de aspecto da foto.

LinedFlowLayout fornece propriedades para controlar:

Construtores

Nome Description
LinedFlowLayout()

Inicializa uma nova instância da classe LinedFlowLayout .

Propriedades

Nome Description
ActualLineHeight

Obtém a altura fixa efetiva das linhas.

ActualLineHeightProperty

Identifica a propriedade de dependência ActualLineHeight .

Dispatcher

Sempre retorna null em um aplicativo do SDK de Aplicativo do Windows. Em vez disso , use DispatcherQueue .

(Herdado de DependencyObject)
DispatcherQueue

Obtém o DispatcherQueue que este objeto está associado. Representa DispatcherQueue uma instalação que pode acessar o DependencyObject thread da interface do usuário mesmo se o código for iniciado por um thread que não seja da interface do usuário.

(Herdado de DependencyObject)
IndexBasedLayoutOrientation

Obtém a orientação, se houver, na qual os itens são dispostos com base em seu índice na coleção de origem.

(Herdado de Layout)
ItemsJustification

Obtém ou define um valor que indica como os itens são alinhados no eixo horizontal.

ItemsJustificationProperty

Identifica a propriedade de dependência ItemsJustification .

ItemsStretch

Obtém ou define um valor que indica como os itens são dimensionados para preencher o espaço disponível.

ItemsStretchProperty

Identifica a propriedade de dependência ItemsStretch .

LineHeight

Obtém ou define a altura fixa das linhas.

LineHeightProperty

Identifica a propriedade de dependência LineHeight .

LineSpacing

Obtém ou define o espaço vertical entre os itens.

LineSpacingProperty

Identifica a propriedade de dependência LineSpacing .

MinItemSpacing

Obtém ou define o espaço mínimo entre os itens no eixo horizontal.

MinItemSpacingProperty

Identifica a propriedade de dependência MinItemSpacing .

RequestedRangeLength

Obtém o número de itens atualmente usando informações de dimensionamento fornecidas por meio do evento ItemsInfoRequested .

RequestedRangeStartIndex

Obtém o menor índice dos itens atualmente usando informações de dimensionamento fornecidas por meio do evento ItemsInfoRequested . Um valor de -1 indica que nenhuma informação de ItemsInfoRequested dimensionamento está sendo usada.

Métodos

Nome Description
Arrange(LayoutContext, Size)

Posiciona elementos filho e determina um tamanho para um UIElement de contêiner. Os elementos de contêiner que dão suporte a layouts anexados devem chamar esse método de implementações de substituição de layout para formar uma atualização de layout recursivo.

(Herdado de Layout)
ArrangeOverride(VirtualizingLayoutContext, Size)

Quando implementado em uma classe derivada, fornece o comportamento para a passagem "Organizar" do layout. As classes podem substituir esse método para definir seu próprio comportamento de passagem "Organizar".

(Herdado de VirtualizingLayout)
ClearValue(DependencyProperty)

Limpa o valor local de uma propriedade de dependência.

(Herdado de DependencyObject)
CreateDefaultItemTransitionProvider()

Representa um controle que posiciona os elementos sequencialmente da esquerda para a direita e, em seguida, de cima para baixo, em um layout de disposição, usando a mesma altura para todos os elementos.

(Herdado de Layout)
GetAnimationBaseValue(DependencyProperty)

Retorna qualquer valor base estabelecido para uma propriedade de dependência, que se aplicaria em casos em que uma animação não está ativa.

(Herdado de DependencyObject)
GetValue(DependencyProperty)

Retorna o valor efetivo atual de uma propriedade de dependência de um DependencyObject.

(Herdado de DependencyObject)
InitializeForContext(LayoutContext)

Inicializa qualquer estado por contêiner que o layout requer quando ele é anexado a um contêiner UIElement.

(Herdado de Layout)
InitializeForContextCore(VirtualizingLayoutContext)

Quando substituído em uma classe derivada, inicializa qualquer estado por contêiner que o layout requer quando é anexado a um contêiner UIElement.

(Herdado de VirtualizingLayout)
InvalidateArrange()

Invalida o estado de organização (layout) para todos os contêineres UIElement que fazem referência a esse layout. Após a invalidação, o UIElement terá seu layout atualizado, o que ocorre de forma assíncrona.

(Herdado de Layout)
InvalidateItemsInfo()

Faz com que o LinedFlowLayout refluxo de seus itens seja feito novamente.

InvalidateMeasure()

Invalida o estado de medida (layout) para todos os contêineres UIElement que fazem referência a esse layout.

(Herdado de Layout)
LockItemToLine(Int32)

Recupera o índice da linha à qual o item com o índice fornecido pertence. Esse item tem a garantia de aparecer na linha retornada até que o evento ItemsUnlocked seja acionado.

Measure(LayoutContext, Size)

Sugere um DesiredSize para um elemento de contêiner. Um elemento de contêiner que dá suporte a layouts anexados deve chamar esse método de suas próprias implementações measureOverride para formar uma atualização de layout recursivo. Espera-se que o layout anexado chame a Medida para cada um dos filhos UIElement do contêiner.

(Herdado de Layout)
MeasureOverride(VirtualizingLayoutContext, Size)

Fornece o comportamento da passagem "Medida" do ciclo de layout. As classes podem substituir esse método para definir seu próprio comportamento de aprovação "Medida".

(Herdado de VirtualizingLayout)
OnItemsChangedCore(VirtualizingLayoutContext, Object, NotifyCollectionChangedEventArgs)

Notifica o layout quando a coleta de dados atribuída ao elemento de contêiner (ItemsSource) é alterada.

(Herdado de VirtualizingLayout)
ReadLocalValue(DependencyProperty)

Retorna o valor local de uma propriedade de dependência, se um valor local for definido.

(Herdado de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra uma função de notificação para escutar alterações em um DependencyProperty específico nesta instância dependencyObject .

(Herdado de DependencyObject)
SetIndexBasedLayoutOrientation(IndexBasedLayoutOrientation)

Define o valor da IndexBasedLayoutOrientation propriedade.

(Herdado de Layout)
SetValue(DependencyProperty, Object)

Define o valor local de uma propriedade de dependência em um DependencyObject.

(Herdado de DependencyObject)
UninitializeForContext(LayoutContext)

Remove qualquer estado que o layout armazenado anteriormente no contêiner UIElement.

(Herdado de Layout)
UninitializeForContextCore(VirtualizingLayoutContext)

Quando substituído em uma classe derivada, remove qualquer estado do layout armazenado anteriormente no contêiner UIElement.

(Herdado de VirtualizingLayout)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Cancela uma notificação de alteração que foi registrada anteriormente chamando RegisterPropertyChangedCallback.

(Herdado de DependencyObject)

Eventos

Nome Description
ArrangeInvalidated

Ocorre quando o estado de organização (layout) foi invalidado.

(Herdado de Layout)
ItemsInfoRequested

Ocorre quando as LinedFlowLayout informações de dimensionamento necessárias para itens dentro e ao redor do visor de rolagem atual.

ItemsUnlocked

Ocorre sempre que os itens bloqueados em linhas específicas por meio de chamadas para o método LockItemToLine são desbloqueados novamente.

MeasureInvalidated

Ocorre quando o estado de medida (layout) foi invalidado.

(Herdado de Layout)

Aplica-se a

Confira também