TableLayoutPanel.GetColumnSpan(Control) Method


Returns the number of columns spanned by the specified child control.

 int GetColumnSpan(System::Windows::Forms::Control ^ control);
public int GetColumnSpan (System.Windows.Forms.Control control);
member this.GetColumnSpan : System.Windows.Forms.Control -> int



A child control of the TableLayoutPanel.


The number of columns spanned by the child control. The default is 1.


The following code example uses the GetColumnSpan and SetColumnSpan methods to set the width of a Button control in a TableLayoutPanel.

private void toggleSpanBtn_Click(
    System.Object sender, 
    System.EventArgs e)
    Control c = this.TableLayoutPanel1.GetControlFromPosition(0, 0);

    if ( c != null )
        int xSpan = this.TableLayoutPanel1.GetColumnSpan(c);
        int ySpan = this.TableLayoutPanel1.GetRowSpan(c);

        if (xSpan>1)
            xSpan = 1;
            ySpan = 1;
            xSpan = 2;
            ySpan = 2;

        this.TableLayoutPanel1.SetColumnSpan(c, xSpan);
        this.TableLayoutPanel1.SetRowSpan(c, ySpan);
Private Sub toggleSpanBtn_Click( _
ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles toggleSpanBtn.Click

    Dim c As Control = Me.TableLayoutPanel1.GetControlFromPosition(0, 0)

    If c IsNot Nothing Then

        Dim xSpan As Integer = Me.TableLayoutPanel1.GetColumnSpan(c)
        Dim ySpan As Integer = Me.TableLayoutPanel1.GetRowSpan(c)

        If xSpan > 1 Then

            xSpan = 1
            ySpan = 1


            xSpan = 2
            ySpan = 2

        End If

        Me.TableLayoutPanel1.SetColumnSpan(c, xSpan)
        Me.TableLayoutPanel1.SetRowSpan(c, ySpan)

    End If

End Sub


Column spanning is often useful for positioning a control that is considerably wider than its peers.

This method is called by the ColumnSpan property, which the panel adds to its child controls at design time.

Applies to

See also