Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O posicionamento preciso de controles em seu formulário é uma prioridade alta para muitos aplicativos. O Designer de Formulários do Windows no Visual Studio oferece muitas ferramentas de layout para fazer isso. Três das mais importantes são as propriedades Margin, Paddinge AutoSize, que estão presentes em todos os controles do Windows Forms.
A propriedade Margin define o espaço ao redor do controle que mantém outros controles a uma distância especificada das bordas do controle.
A propriedade Padding define o espaço no interior de um controle que mantém o conteúdo do controle (por exemplo, o valor de sua propriedade Text) a uma distância especificada das bordas do controle.
A ilustração a seguir mostra as propriedades Padding e Margin em um controle.
A propriedade AutoSize instrui um controle a dimensionar-se automaticamente conforme o seu conteúdo. Ele não se redimensionará para ser menor que o valor de sua propriedade original Size e levará em conta o valor de sua propriedade Padding.
Pré-requisitos
Você precisará do Visual Studio para concluir este passo a passo.
Criar o projeto
No Visual Studio, crie um projeto de Aplicativo do Windows chamado
LayoutExample.Selecione o formulário no Designer de Formulários do Windows.
Definir margens para controles
Você pode definir a distância padrão entre seus controles usando a propriedade Margin. Quando você move um controle feche suficiente para um outro controle, você verá uma guia de alinhamento que mostra as margens para os dois controles. O controle que você está movendo também se ajustará à distância definida pelas margens.
Organize controles no seu formulário usando a propriedade Margin
Arraste dois controles Button da caixa de ferramentas para o formulário.
Selecione um dos controles Button e mova-o para perto do outro, até que eles estejam quase se tocando.
Observe a guia de alinhamento que aparece entre eles. Essa distância é a soma dos valores Margin dos dois controles. O controle que você está movendo se ajusta a essa distância. Para mais detalhes, consulte Instruções passo a passo: organizando controles no Windows Forms usando linhas de alinhamento.
Altere a propriedade
de um dos controles expandindo a entrada na janela propriedades e definindo a propriedade como 20 .Selecione um dos controles Button e mova-o para perto do outro.
A guia de alinhamento definindo a soma dos valores de margem é maior e o controle se ajusta a uma distância maior de outro controle.
Altere a propriedade
do controle selecionado expandindo a entrada na janela Propriedades do e definindo a propriedade como 5 .Mova o controle selecionado abaixo do outro controle e observe que o snapline é mais curto. Mova o controle selecionado para a esquerda do outro controle e observe que o snapline mantém o valor observado na etapa 4.
Você pode definir cada um dos aspectos da propriedade Margin, Left, Top, Right, Bottom, para valores diferentes ou pode defini-los todos com o mesmo valor com a propriedade All.
Definir espaçamento para controles
Para alcançar o layout preciso necessário para seu aplicativo, os controles geralmente contém controles filho. Quando você deseja especificar a proximidade da borda do controle filho à borda do controle pai, use a propriedade Padding do controle pai em conjunto com a propriedade Margin do controle filho. A propriedade Padding também é usada para controlar a proximidade do conteúdo de um controle (por exemplo, a propriedade Button de um controle de Text) em relação às bordas dele.
Organize os controles em seu formulário usando preenchimento de espaço
Arraste um controle Button da caixa de ferramentas para o formulário.
Altere o valor da propriedade Button do controle AutoSize para verdadeiro.
Altere a propriedade
expandindo a entrada na janela Propriedades do e definindo a propriedade como 5 .O controle se expande para fornecer espaço para o novo preenchimento.
Arraste um controle GroupBox da caixa de ferramentas para o formulário. Arraste um controle Button da caixa de ferramentas para o controle GroupBox. Posicione o controle Button de forma que ele fique alinhado com o canto inferior direito do controle GroupBox.
Observe as guias de alinhamento que aparecem à medida que o controle Button se aproxima das bordas inferior e direita do controle GroupBox. Essas guias de alinhamento correspondem à propriedade Margin do Button.
Altere a propriedade GroupBox do controle Padding expandindo a entrada Padding na janela Propriedades e definindo a propriedade All como 20.
Selecione o controle Button dentro do controle GroupBox e mova-o em direção ao centro do GroupBox.
As guias de alinhamento aparecem a uma distância maior das bordas do controle GroupBox. Essa distância é a soma da propriedade Button do controle Margin e da propriedade GroupBox do controle Padding.
Controles de tamanho automáticos
Em alguns aplicativos, o tamanho de um controle não será o mesmo em tempo de execução que era em tempo de design. O texto de um controle de Button, por exemplo, pode ser retirado de um banco de dados e seu comprimento não é conhecido com antecedência.
Quando a propriedade AutoSize for definida como true, o controle será dimensionado para seu conteúdo. Para obter mais informações, consulte Visão Geral da Propriedade AutoSize.
Organizar controles em seu formulário usando a propriedade AutoSize
Arraste um controle Button da caixa de ferramentas para o formulário.
Altere o valor da propriedade Button do controle AutoSize para verdadeiro.
Altere a propriedade Button do controle Text para Este botão possui uma cadeia de caracteres longa para sua propriedade Text.
Quando você confirma a alteração, o controle Button se redimensiona para se ajustar ao novo texto.
Arraste outro controle Button da caixa de ferramentas para o formulário.
Altere a propriedade Button do controle Text para "Este botão tem uma cadeia de caracteres longa para sua propriedade Text."
Quando você confirma a alteração, o controle Button não se redimensiona e o texto é cortado pela borda direita do controle.
Altere a propriedade
expandindo a entrada na janela Propriedades do e definindo a propriedade como 5 .O texto no interior do controle é cortado nos quatro lados.
Altere a propriedade Button do controle AutoSize para true.
O controle Button se redimensiona para abranger toda a cadeia de caracteres. Além disso, o preenchimento de espaço foi adicionado ao redor do texto, fazendo com que o controle Button se expanda em todas as quatro direções.
Arraste um controle Button da caixa de ferramentas para o formulário. Posicione-o perto do canto inferior direito do formulário.
Altere o valor da propriedade Button do controle AutoSize para verdadeiro.
Defina a propriedade Button do controle Anchor como Right, Bottom.
Altere a propriedade Button do controle Text para "Este botão tem uma cadeia de caracteres longa para sua propriedade Text."
Quando você confirma a alteração, o controle Button se redimensiona em direção à esquerda. Em geral, o dimensionamento automático aumentará o tamanho de um controle na direção oposta à configuração da propriedade Anchor.
Propriedades AutoSize e AutoSizeMode
Alguns controles dão suporte à propriedade AutoSizeMode, o que oferece um controle mais refinado sobre o comportamento de dimensionamento automático de um controle.
Usar a propriedade AutoSizeMode
Arraste um controle Panel da caixa de ferramentas para o formulário.
Defina o valor da propriedade Panel do controle AutoSize como true.
Arraste um controle Button da caixa de ferramentas para o controle Panel.
Coloque o controle Button próximo ao canto inferior direito do controle Panel.
Selecione o controle Panel e arraste a alça de dimensionamento inferior direita. Redimensione o controle Panel para aumentar e diminuir de tamanho.
Defina o valor da propriedade Panel do controle
AutoSizeModecomo GrowAndShrink.O controle Panel se dimensiona automaticamente para cercar o controle Button. Não é possível redimensionar o controle Panel.
Arraste o controle Button em direção ao canto superior esquerdo do controle Panel.
O controle Panel é redimensionado para se ajustar à nova posição do controle Button.
Próximas etapas
Há muitos outros recursos de layout para organizar controles em seus aplicativos do Windows Forms. Aqui estão algumas combinações que você pode tentar:
Crie um formulário usando um controle TableLayoutPanel. Para obter detalhes, consulte Passo a passo: Organizando controles no Windows Forms usando um TableLayoutPanel. Tente alterar os valores da propriedade TableLayoutPanel do controle Padding, bem como a propriedade Margin nos respectivos controles filho.
Experimente o mesmo experimento usando um controle FlowLayoutPanel. Para mais detalhes, consulte Explicação passo a passo: organizando controles no Windows Forms utilizando um FlowLayoutPanel.
Experimente encaixar controles filho em um controle Panel. A propriedade Padding é uma realização mais geral da propriedade DockPadding, e você pode comprovar por si mesmo que esse é o caso colocando um controle filho em um controle Panel e definindo a propriedade Dock do controle filho para Fill. Defina a propriedade Panel do controle Padding para vários valores e observe o efeito.
Consulte também
- AutoSize
- DockPadding
- Margin
- Padding
- Visão geral da propriedade AutoSize
- Passo a passo: Organizando controles nos Windows Forms usando um TableLayoutPanel
- Passo a Passo: Organizando Controles nos Windows Forms usando FlowLayoutPanel
- passo a passo: organizando controles nos Windows Forms usando snaplines
.NET Desktop feedback