Partilhar via


Layout com absoluto e dinâmica posicionamento

Quando você cria uma janela em um aplicativo, você deve decidir como dispor os controles nessa janela.Você também deve decidir como os controles na janela se comportam quando o usuário redimensiona a janela.Esses são problemas de posicionamento absoluto e dinâmicos.

Quando você cria uma janela em um aplicativo, você definir o tamanho e os tamanhos dos controles nessa janela.Você deve decidir como a janela e os controles se comportam se seu conteúdo for alterado.Por exemplo, se você adicionar um controle do rótulo para uma janela, você pode especificar como o rótulo se comporta se o texto é convertido em outro idioma.Esses são problemas de dimensionamento dinâmico.

Tipos de layouts

A seguir estão três tipos de layouts que você pode criar na caixa Windows Presentation Foundation (WPF) Designer for Visual Studio:

  • absolute
    Você organiza elementos filho especificando suas localizações exatas Relative to o elemento pai.Por exemplo, você organizar controles em um painel, especificando as coordenadas dos controles em relação ao painel esquerdo e superior.Os elementos filho não mova quando o elemento pai é redimensionado.Para obter mais informações, consulte Como: Construir um layout baseado no posicionamento absoluto ou Demonstra Passo a passo: Construindo um layout baseado no posicionamento absoluto.

  • Dynamic
    Você organiza elementos filho, especificando como eles devem ser organizados e como eles devem quebrar em relação ao seu pai.Por exemplo, você pode organizar controles em um painel e especifique que eles devem dispor horizontalmente.Se o elemento pai é reduzido, os elementos filho mover para a próxima linha.Como o elemento pai é ampliado, os elementos filho mover para a linha anterior.Para obter mais informações, consulte Como: Construir um layout dinâmico ou Demonstra Passo a passo: Construindo um layout dinâmico.

  • Dinâmico de dados-Driven
    Você acoplar um controle aos dados.O controle é preenchido com os dados e as linhas e colunas são estilo automaticamente para ajustar os dados.

Sempre que possível, é preferível para usar um layout dinâmico.Layouts dinâmicos são os mais flexível e permitir que o usuário final o maior controle sobre seu ambiente.Layouts dinâmicos permitem que seu conteúdo adaptar-se a localização e outras alterações conteúdo.Layouts absolutos devem ser reservados para casos quando precisos e sem variação posicionamento de elementos é importante, ou quando há apenas um único elemento filho, such as uma imagem ou um elemento gráfico.

Observação:

Layouts absoluto e dinâmico podem ser combinados.Por exemplo, você pode ter uma janela com um layout dinâmico geral, mas que tenha uma parte da janela que usa o posicionamento absoluto.

Painéis

O WPF fornece vários Panel controles que suportam o posicionamento absoluto e dinâmicos.Painel controles podem ser combinados adicionando um painel de controle como o filho de outra.Você pode usar os seguintes controles do painel para posicionar elementos dinamicamente em seus aplicativos:

Panel

Tipo de layout

Descrição

Grid

Dynamic

Define uma área onde você pode posicionar elementos filho em linhas e colunas.

DockPanel

Dynamic

Define uma área onde você pode organizar e Empilhar elementos filho na parte superior, inferior, da borda esquerda ou direita.

WrapPanel

Dynamic

Organiza automaticamente elementos filho na posição sequencial, movendo o conteúdo para a próxima linha na borda do recipiente pai.Ordenação ocorre sequencialmente a partir de cima para baixo ou da esquerda para a direita, dependendo se a orientação é definida como horizontal ou vertical.

StackPanel

Dynamic

Organiza elementos filhos em uma única linha que pode ser orientada horizontalmente ou verticalmente.

UniformGrid

Dynamic

Organiza automaticamente elementos filho em linhas e colunas.As linhas e colunas são espaçadas.Se um elemento não couber em uma célula, será truncado.

Canvas

absolute

Define uma área onde você pode posicionar elementos filho explicitamente, usando coordenadas.

Controles

O WPF oferece controles que suporte orientado a dados dinâmicos posicionamento.Esses controles podem ser vinculados a dados e dimensionados automaticamente para ajustar os dados.Você pode usar os seguintes controles para exibir dados dinamicamente em seus aplicativos:

Controle

Tipo de layout

Descrição

ListView

Dinâmico de dados-Driven

Exibe uma lista de itens de dados.

GridView

Dinâmico de dados-Driven

Exibe itens de dados em colunas para um controle de lista Modo de exibição.

Dimensionamento dinâmico

Dimensionamento dinâmico, você configurar os controles para que eles expandir ou contrato automaticamente caber seu conteúdo.Por exemplo, se você dimensionar um controle do rótulo para ajustar texto em um idioma, e o texto é convertido em outro idioma, você pode definir o rótulo a ser redimensionada automaticamente para ajustar o novo texto.Posicionamento dinâmico oferece suporte dinâmico de dimensionamento, ajustando a posição dos controles automaticamente ao alterar seus tamanhos.

A seguir estão as propriedades que você pode definir para ajudá-lo a criar layouts dinâmicos:

Propriedade

Valores

Aplicável a

Anotações

Width

Double , Auto, *

Windows, controles, colunas de grade.

Use automaticamente e dimensionamento estrela para a máxima flexibilidade.Para mais informações, veja a próxima seção.* se aplica apenas a colunas de grade.

Height

Double , Auto, *

Windows, controles, linhas de grade.

Use automaticamente e dimensionamento estrela para a máxima flexibilidade.Para mais informações, veja a próxima seção.* Aplica-se somente a linhas de grade.

MinWidth

double

Windows, controles, colunas de grade.

Definido como 0 para a máxima flexibilidade.

MinHeight

double

Windows, controles, linhas de grade.

Definido como 0 para a máxima flexibilidade.

MaxWidth

double, Infinity

Windows, controles, colunas de grade.

Definido como infinito para a máxima flexibilidade.

MaxHeight

double, Infinity

Windows, controles, linhas de grade.

Definido como infinito para a máxima flexibilidade.

ResizeMode

NoResize

CanMinimize

CanResize

CanResizeWithGrip

Windows

Definido CanResize como 0 para a máxima flexibilidade.Isso permite que o usuário redimensionar a janela.

SizeToContent

Manual

Width

Height

WidthAndHeight

Windows

Definido WidthAndHeight como 0 para a máxima flexibilidade.Isso permite que a janela para redimensionar próprio automaticamente quando seu conteúdo expande.

Automático e dimensionamento de estrela

Dimensionamento Automático é usado para permitir que controles caber seu conteúdo, mesmo se o conteúdo alterado o tamanho.Estrela de dimensionamento é usado para distribuir o espaço entre as linhas e colunas de uma grade disponível por ponderada proporções.Em Extensible Application marcação idioma (XAML), estrela valores são expressos como * (ou n *).Por exemplo, se você tiver uma grade com 4 colunas, você pode definir as larguras das colunas da seguinte maneira:

Coluna 1

Auto

A coluna será dimensionado para caber seu conteúdo.

Coluna 2

*

Após o automaticamente colunas são calculados, a coluna obtém parte a largura restante.A coluna 2 será metade tão larga quanto Coluna 4.

Coluna 3

Auto

A coluna será dimensionado para caber seu conteúdo.

Coluna 4

2*

Após o automaticamente colunas são calculados, a coluna obtém parte a largura restante.Coluna 4 será duas vezes tão larga quanto da coluna 2.

Para obter mais informações, consulte Star.

Consulte também

Conceitos

Alinhamento no WPF Designer

O sistema de layout

Visão geral do designer WPF

Outros recursos

Walkthroughs de layout