TableLayoutPanel.GetRow(Control) メソッド

定義

指定した子コントロールの行位置を返します。

public:
 int GetRow(System::Windows::Forms::Control ^ control);
public int GetRow(System.Windows.Forms.Control control);
member this.GetRow : System.Windows.Forms.Control -> int
Public Function GetRow (control As Control) As Integer

パラメーター

control
Control

TableLayoutPanelの子コントロール。

返品

controlの行位置、またはcontrolの位置がLayoutEngineによって決定される場合に -1。

例外

controlnullです。

control は、この LayoutEngineで配置できる型ではありません。

次のコード例では、 TableLayoutPanel 内のすべての子コントロールを列挙し、 GetRow メソッドを使用してそれぞれの行インデックスを検索します。

private void getRowBtn_Click(
    System.Object sender, 
    System.EventArgs e)
{
    foreach ( Control c in this.TableLayoutPanel1.Controls )
    {
        Trace.WriteLine(this.TableLayoutPanel1.GetRow(c));
    }
}
Private Sub getRowBtn_Click( _
ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles getRowBtn.Click

    Dim c As Control
    For Each c In Me.TableLayoutPanel1.Controls

        Trace.WriteLine(Me.TableLayoutPanel1.GetRow(c))

    Next

End Sub

注釈

controlが複数の行にまたがる場合、GetRow メソッドは最も低い行インデックスを返します。

行位置の値は 0 から始まるため、 GetRowHeightsによって返される配列のインデックスとして使用できます。

このメソッドは、デザイン時にパネルが子コントロールに追加する Row プロパティによって呼び出されます。

controlによって位置が決定された場合でも、LayoutEngineの実際の位置を取得するには、GetPositionFromControl メソッドを呼び出します。

適用対象

こちらもご覧ください