UniformGridLayout Classe

Definição

Posiciona os elementos sequencialmente da esquerda para a direita ou de cima para baixo em um layout de disposição.

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

Exemplos

Dica

Para obter mais informações, diretrizes de design e exemplos de código, consulte ItemsRepeater.

O aplicativo Galeria da WinUI 3 inclui exemplos interativos da maioria dos controles, recursos e funcionalidades da WinUI 3. Obtenha o aplicativo na Microsoft Store ou o código-fonte no GitHub.

O exemplo a seguir mostra como definir a propriedade ItemsRepeater.Layout como uniformGridLayout.

<!--
    xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
-->
...
<muxc:ItemsRepeater ItemsSource="{x:Bind Items}"
                    ItemTemplate="{StaticResource MyTemplate}">
    <muxc:ItemsRepeater.Layout>
        <muxc:UniformGridLayout MinItemWidth="200"
                                MinColumnSpacing="28"
                                ItemsJustification="SpaceAround"/>
    </muxc:ItemsRepeater.Layout>
</muxc:ItemsRepeater>

Comentários

Os itens são colocados em ordem da esquerda para a direita quando a Orientação é Horizontale colocados de cima para baixo quando a Orientação é Vertical.

Cada item em um UniformGridLayout é dimensionado igualmente.

UniformGridLayout dá suporte à virtualização quando anexado a um host que dá suporte à virtualização.

Construtores

UniformGridLayout()

Inicializa uma nova instância da classe UniformGridLayout .

Propriedades

Dispatcher

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

(Herdado de DependencyObject)
DispatcherQueue

Obtém o ao DispatcherQueue qual esse objeto está associado. O DispatcherQueue representa uma instalação que pode acessar o DependencyObject no thread da interface do usuário mesmo que o código seja 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 não rolagem ou não virtualização.

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 .

MaximumRowsOrColumns

Obtém ou define o número máximo de itens renderizados por linha ou coluna, com base na orientação do UniformGridLayout.

MaximumRowsOrColumnsProperty

Identifica a propriedade de dependência MaximumRowsOrColumns .

MinColumnSpacing

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

MinColumnSpacingProperty

Identifica a propriedade de dependência MinColumnSpacing .

MinItemHeight

Obtém ou define a altura mínima de cada item.

MinItemHeightProperty

Identifica a propriedade de dependência MinItemHeight .

MinItemWidth

Obtém ou define a largura mínima de cada item.

MinItemWidthProperty

Identifica a propriedade de dependência MinItemWidth .

MinRowSpacing

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

MinRowSpacingProperty

Identifica a propriedade de dependência MinRowSpacing .

Orientation

Obtém ou define o eixo ao longo do qual os itens são dispostos.

OrientationProperty

Identifica a propriedade de dependência Orientation .

Métodos

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 suas implementações de substituição de layout para formar uma atualização de layout recursiva.

(Herdado de Layout)
ArrangeOverride(VirtualizingLayoutContext, Size)

Quando implementado em uma classe derivada, fornece o comportamento para a passagem de layout "Organizar". 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()

Posiciona os elementos sequencialmente da esquerda para a direita ou de cima para baixo em um layout de disposição.

(Herdado de Layout)
GetAnimationBaseValue(DependencyProperty)

Retorna qualquer valor base estabelecido para uma propriedade de dependência, que se aplicaria nos 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 está 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 está 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)
InvalidateMeasure()

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

(Herdado de Layout)
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 recursiva. 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 para a passagem "Medida" do ciclo de layout. As classes podem substituir esse método para definir seu próprio comportamento de passagem "Medida".

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

Notifica o layout quando a coleta de dados atribuída ao elemento contêiner (ItemsSource) foi 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 uma DependencyProperty específica nesta instância dependencyObject .

(Herdado de DependencyObject)
SetIndexBasedLayoutOrientation(IndexBasedLayoutOrientation)

Define o valor da propriedade IndexBasedLayoutOrientation.

(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 do 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

ArrangeInvalidated

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

(Herdado de Layout)
MeasureInvalidated

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

(Herdado de Layout)

Aplica-se a

Confira também