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 |
---|---|---|
Dynamic |
Define uma área onde você pode posicionar elementos filho em linhas e colunas. |
|
Dynamic |
Define uma área onde você pode organizar e Empilhar elementos filho na parte superior, inferior, da borda esquerda ou direita. |
|
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. |
|
Dynamic |
Organiza elementos filhos em uma única linha que pode ser orientada horizontalmente ou verticalmente. |
|
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. |
|
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 |
---|---|---|
Dinâmico de dados-Driven |
Exibe uma lista de itens de dados. |
|
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 |
---|---|---|---|
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. |
|
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. |
|
double |
Windows, controles, colunas de grade. |
Definido como 0 para a máxima flexibilidade. |
|
double |
Windows, controles, linhas de grade. |
Definido como 0 para a máxima flexibilidade. |
|
double, Infinity |
Windows, controles, colunas de grade. |
Definido como infinito para a máxima flexibilidade. |
|
double, Infinity |
Windows, controles, linhas de grade. |
Definido como infinito para a máxima flexibilidade. |
|
Windows |
Definido CanResize como 0 para a máxima flexibilidade.Isso permite que o usuário redimensionar a janela. |
||
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.