Previous | Home | Next |
The TableLayoutPanel control is a container control where child controls are added within a table structure. Each cell in the table contains a single control, unless a container such as a Panel is added first.
Useful properties
CellBorderStyle
This property determines if the cell is outlined with a border or not. A value from the TableLayoutPanelCellBorderStyle enumeration is required, the default value is None:
Inset - A single-line sunken border.
InsetDouble - A double-line sunken border.
None - No borders.
Outset - A single-line raised border.
Outset Double - A double-line raised border.
OutsetPartial - A single-line border containing a raised portion.
Single - A single-line border.
ColumnCount
Determines the number of columns in the table.
ColumnStyles
A collection of column styles, one for each column in the TableLayoutPanel control.
Controls
Gets the collection of controls contained within the control.
GrowStyle
Determines whether the control should expand to accommodate new cells when all existing cells are occupied. A value from the TableLayoutPanelGrowStyle enumeration is required, the default value is AddRows:
AddColumns - The TableLayoutPanel gains additional columns after it is full.
AddRows - The TableLayoutPanel gains additional rows after it is full.
FixedSize - The TableLayoutPanel does not allow additional rows or columns after it is full.
RowCount - Determines the number of rows in the table
RowStyles - A collection of row styles, one for each row in the TableLayoutPanel control.
Example
This dialog allows you to edit the SizeType property of each of the Columns and Rows in the TableLayoutPanel. The SizeType property determines how the Height (RowStyle) or Width (ColumnStyle) should be interpreted. A value from the SizeType enumeration is required, the default value is Percent:
Absolute :The row or column should be sized to an exact number of pixels.
AutoSize : The row or column should be automatically sized to share space with its peers.
Percent :The row or column should be sized as a percentage of the parent container.
Adding a TableLayoutPanel manually
' Create TableLayoutPanel Dim tlp As New TableLayoutPanel() ' Set the BorderStyle to Inset tlp.CellBorderStyle = TableLayoutPanelCellBorderStyle.Inset ' Grid has two columns tlp.ColumnCount = 2 ' Grid has two rows tlp.RowCount = 2 ' If grid is full add extra cells by adding column tlp.GrowStyle = TableLayoutPanelGrowStyle.AddColumns ' Padding (pixels)within each cell (left, top, right, bottom) tlp.Padding = New Padding(1, 1, 4, 5) ' Add TableLayoutPanel to the Forms controls Me.Controls.Add(tlp)
Adding controls manually
Adding a control to a TableLayoutPanel at run time can be done in a couple of ways. Simply using the Add method with just the name of the control adds the control to the first available cell.
' Create buttons Dim button1 As New Button() button1.Text = "Click Me" ' Add buttons to TableLayoutPanel tlp.Controls.Add(button1)
Previous | Home | Next |