Edit

Share via


SizeType Enum

Definition

Specifies how rows or columns of user interface (UI) elements should be sized relative to their container.

public enum class SizeType
public enum SizeType
type SizeType = 
Public Enum SizeType
Inheritance
SizeType

Fields

Name Value Description
AutoSize 0

The row or column should be automatically sized to share space with its peers.

Absolute 1

The row or column should be sized to an exact number of pixels.

Percent 2

The row or column should be sized as a percentage of the parent container.

Examples

The following example shows how to set the TableLayoutStyle.SizeType property on a ColumnStyle object. This code example is part of a larger example provided for the TableLayoutPanel control.

private void toggleColumnStylesBtn_Click(
    System.Object sender, 
    System.EventArgs e)
{
    TableLayoutColumnStyleCollection styles = 
        this.TableLayoutPanel1.ColumnStyles;

    foreach( ColumnStyle style in styles )
    {
        if( style.SizeType == SizeType.Absolute )
        {
            style.SizeType = SizeType.AutoSize;
        }
        else if( style.SizeType == SizeType.AutoSize )
        {
            style.SizeType = SizeType.Percent;

            // Set the column width to be a percentage
            // of the TableLayoutPanel control's width.
            style.Width = 33;
        }
        else
        {
            // Set the column width to 50 pixels.
            style.SizeType = SizeType.Absolute;
            style.Width = 50;
        }
    }
}
Private Sub toggleColumnStylesBtn_Click( _
ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles toggleColumnStylesBtn.Click

    Dim styles As TableLayoutColumnStyleCollection = _
    Me.TableLayoutPanel1.ColumnStyles

    For Each style As ColumnStyle In styles

        If style.SizeType = SizeType.Absolute Then

            style.SizeType = SizeType.AutoSize

        ElseIf style.SizeType = SizeType.AutoSize Then

            style.SizeType = SizeType.Percent

            ' Set the column width to be a percentage
            ' of the TableLayoutPanel control's width.
            style.Width = 33

        Else

            ' Set the column width to 50 pixels.
            style.SizeType = SizeType.Absolute
            style.Width = 50

        End If

    Next

End Sub

Remarks

The SizeType enumeration specifies how rows or columns of UI elements, typically controls, should be sized relative to the size of their container. This enumeration is used by the RowStyle and ColumnStyle classes to indicate their preferred sizing attributes. The TableLayoutPanel class, in turn, uses these style classes.

When laying out a container with rows or columns that have different preferred sizing attributes, any space remaining after the initial allocation will be distributed between the rows or columns whose styles have TableLayoutStyle.SizeType property values of AutoSize or Percent.

Applies to

See also