Share via


UniformGridLayout Classe

Definição

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

/// [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
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.

Os aplicativos da Galeria do WinUI 3 e da Galeria do WinUI 2 incluem exemplos interativos da maioria dos controles, recursos e funcionalidade do WinUI 3 e do WinUI 2.

Se já estiverem instalado, abra-os clicando nos seguintes links: Galeria do WinUI 3 ou Galeria do WinUI 2.

Se eles não estiverem instalados, você poderá baixar a Galeria do WinUI 3 e a Galeria do WinUI 2 da Microsoft Store.

Você também pode obter o código-fonte para ambos do GitHub (use o branch main para WinUI 3 e o branch winui2 para WinUI 2).

O exemplo a seguir mostra como definir a propriedade ItemsRepeater.Layout como um 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 .

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

Propriedades

ItemsJustification

Obtém ou define um valor que indica como os itens são alinhados no eixo de não rolagem ou não virtualização.

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

ItemsJustificationProperty

Identifica a propriedade de dependência ItemsJustification .

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

ItemsStretch

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

ItemsStretchProperty

Identifica a propriedade de dependência ItemsStretch .

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

MaximumRowsOrColumns

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

MaximumRowsOrColumnsProperty

Identifica a propriedade de dependência MaximumRowsOrColumns .

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

MinColumnSpacing

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

MinColumnSpacingProperty

Identifica a propriedade de dependência MinColumnSpacing .

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

MinItemHeight

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

MinItemHeightProperty

Identifica a propriedade de dependência MinItemHeight .

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

MinItemWidth

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

MinItemWidthProperty

Identifica a propriedade de dependência MinItemWidth .

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

MinRowSpacing

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

MinRowSpacingProperty

Identifica a propriedade de dependência MinRowSpacing .

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

Orientation

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

OrientationProperty

Identifica a propriedade de dependência orientation .

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

Métodos

Arrange(LayoutContext, Size)

Posiciona elementos filho e determina um tamanho para um UIElement de contêiner. 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.

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

(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".

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

(Herdado de VirtualizingLayout)
InitializeForContext(LayoutContext)

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

(Herdado de Layout)
InitializeForContextCore(VirtualizingLayoutContext)

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

(Herdado de Layout)
InvalidateMeasure()

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

(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 recursivo. Espera-se que o layout anexado chame a Medida para cada um dos filhos UIElement do contêiner.

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

(Herdado de Layout)
MeasureOverride(VirtualizingLayoutContext, Size)

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

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

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

(Herdado de VirtualizingLayout)
UninitializeForContext(LayoutContext)

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

(Herdado de Layout)
UninitializeForContextCore(VirtualizingLayoutContext)

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

(Herdado de VirtualizingLayout)

Eventos

ArrangeInvalidated

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

(Herdado de Layout)
MeasureInvalidated

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

(Herdado de Layout)

Aplica-se a

Confira também