TableLayoutPanel.GetColumn Method (Control)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Returns the column position of the specified child control.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public int GetColumn(
	Control control


Type: System.Windows.Forms.Control

A child control of the TableLayoutPanel.

Return Value

Type: System.Int32

The column position of the specified child control, or -1 if the position of control is determined by LayoutEngine.

Exception Condition

control is null.


control is not a type that can be arranged by this System.Windows.Forms.Layout.LayoutEngine.

If control spans two or more columns, the GetColumn method will return the lowest column index.

The column position value is zero based, so you can use it as an index for the array returned by GetColumnWidths.

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

To get the actual position of control, even when its position is determined by LayoutEngine, call the GetPositionFromControl method.

The following code example enumerates all the child controls in the TableLayoutPanel and finds the column index for each control using the GetColumn method.

  private void getColumnBtn_Click(
System.Object sender, 
System.EventArgs e)
      foreach ( Control c in this.TableLayoutPanel1.Controls )

.NET Framework
Available since 2.0
Return to top