Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original
1 de 1 pessoas classificaram isso como útil - Avalie este tópico

Classe TableLayoutPanel

Representa um painel que contemple dinamicamente seu Sumário em uma grade composta de linhas e colunas.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (em System.Windows.Forms.dll)
[DockingAttribute(DockingBehavior.Never)]
[ComVisibleAttribute(true)]
[ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)]
public class TableLayoutPanel : Panel, 
	IExtenderProvider

O controle TableLayoutPanel organiza seu conteúdo em uma grade. Porque o layout é executado tanto em tempo de design quanto em tempo de execução, ele pode alterar dinamicamente a medida que o ambiente do aplicativo altere. Isso permite sistema autônomo controles no painel para redimensionar proporcionalmente, portanto, ele pode responder a alterações, sistema autônomo o redimensionamento do controle pai ou a alteração de comprimento de texto devido à localização.

Qualquer controle Windows Forms pode ser um filho do TableLayoutPanel controle, incluindo outras ocorrências do TableLayoutPanel. Isso permite que você construir layouts sofisticados que se adapte a alterações em tempo de execução.

The TableLayoutPanel controle pode expandir para acomodar novos controles quando eles são adicionados, dependendo do valor da RowCount, ColumnCount, e GrowStyle Propriedades. configuração ambos o RowCount ou ColumnCount propriedade para um valor igual a 0 Especifica que o TableLayoutPanel vai ser não acopladas na direção correspondente.

Você também pode controlar a direção de expansão (horizontal ou vertical) após o TableLayoutPanel controle tem controles filho. Por padrão, a TableLayoutPanel controle expande para baixo, adicionando linhas.

Se desejar linhas e colunas se comportam de maneira diferente do comportamento padrão, você pode controlar as propriedades de linhas e colunas usando o RowStyles e ColumnStyles Propriedades. Você pode conjunto as propriedades de linhas ou colunas individualmente.

The TableLayoutPanel controle adiciona as propriedades a seguir para seus controles filho: Cell, Column, , Row, ColumnSpan, e RowSpan.

Você pode mesclagem células no TableLayoutPanel controlar o configuração o ColumnSpan ou RowSpan propriedades em um controle filho.

Observação Observação:

Para conjunto o Cell, Column, Row, ColumnSpan, e RowSpan propriedades em time de execução, use o SetCellPosition(), SetColumn(), SetRow(), SetColumnSpan(), e SetRowSpan() métodos.

Para ler o Cell , Column , Row , ColumnSpan e RowSpan propriedades em time de execução, use o GetCellPosition() , GetColumn() , GetRow() , GetColumnSpan() e GetRowSpan() métodos.

O comportamento de encaixe de controles filho é semelhante a outros controles de contêiner.

O comportamento de ancoragem de controles filho em um TableLayoutPanel difere para o comportamento em outros controles de contêiner. Se o valor Anchor propriedade é conjunto para Left ou Right, o controle será colocado contra a borda esquerda ou direita da célula, a uma distância que é a soma do controle Margin propriedade e o painel Padding propriedade. Se o Left e Right valores são definidas e o controle será dimensionado para a largura da célula, com o Margin e Padding valores levados em conta. O comportamento de Top e Bottom ancoragem é semelhante. Para obter mais informações, consulte Como: Ancorar e ancorar controles de filho em um controle TableLayoutPanel.

Se você precisa de um controle filho para imitar o comportamento de ancoragem padrão em outros controles de contêiner, você pode ajustar o Margin e Padding propriedades para manter uma distância constante entre a borda do controle e borda da célula.

configuração os valores do Column e Row Propriedades de um controle filho como -1 fará com que o controle a ser movida para a primeira célula vazia na TableLayoutPanel controle. A célula vazia será escolhida em uma Pesquisar continua da esquerda para a direita e de cima para baixo. Essa ordem é dependente da cultura, para que ele se comportará corretamente na direita para a esquerda (da direita para esquerda) layouts.

Observação Observação:

Somente controles que têm a Visible conjunto de propriedades como true participar de TableLayoutPanel cálculos de layout do controle.

O exemplo de código a seguir demonstra como substituir o OnCellPaint método para criar uma aparência personalizada para uma célula. Para obter um exemplo que usa o TableLayoutPanel controle para criar layouts que respondem bem ao redimensionamento, consulte Exemplo de Controlarar TableLayoutPanel.

publicclass DemoTableLayoutPanel : TableLayoutPanel
{
	protectedoverridevoid OnCellPaint(TableLayoutCellPaintEventArgs e)
	{
		base.OnCellPaint(e);

        Control c = this.GetControlFromPosition(e.Column, e.Row);

        if ( c != null )
        {
            Graphics g = e.Graphics;

            g.DrawRectangle(
				Pens.Red, 
				e.CellBounds.Location.X+1,
				e.CellBounds.Location.Y + 1,
				e.CellBounds.Width - 2, e.CellBounds.Height - 2);

			g.FillRectangle(
				Brushes.Blue, 
				e.CellBounds.Location.X + 1, 
				e.CellBounds.Location.Y + 1, 
				e.CellBounds.Width - 2, 
				e.CellBounds.Height - 2);
        };
	}

}


System.Object
  System.MarshalByRefObject
    System.ComponentModel.Component
      System.Windows.Forms.Control
        System.Windows.Forms.ScrollableControl
          System.Windows.Forms.Panel
            System.Windows.Forms.TableLayoutPanel
              System.ComponentModel.Design.ByteViewer
Quaisquer membros static (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

o.NET Framework e.NET Compact Framework não oferecem suporte a todas as versões de cada plataforma. Para obter uma lista de versões suportadas, consulte Requisitos de sistema do .NET framework.

.NET Framework

Compatível com: 3.5, 3.0, 2.0

Data

History

Motivo

Julho de 2008

Observação adicionada para a seção de comentários para esclarecer a obtenção e configuração propriedades adicionadas a um controle filho. Corrigido comentário sobre a definição das propriedades coluna e linha como -1.

Comentários do cliente.

Isso foi útil para você?
(1500 caracteres restantes)
Conteúdo da Comunidade Adicionar