TableLayoutPanel.GetControlFromPosition(Int32, Int32) Metod

Definition

Returnerar den underordnade kontrollen som upptar den angivna positionen.

public:
 System::Windows::Forms::Control ^ GetControlFromPosition(int column, int row);
public System.Windows.Forms.Control GetControlFromPosition(int column, int row);
public System.Windows.Forms.Control? GetControlFromPosition(int column, int row);
member this.GetControlFromPosition : int * int -> System.Windows.Forms.Control
Public Function GetControlFromPosition (column As Integer, row As Integer) As Control

Parametrar

column
Int32

Kolumnpositionen för kontrollen som ska hämtas.

row
Int32

Radpositionen för kontrollen som ska hämtas.

Returer

Den underordnade kontrollen som upptar den angivna cellen. annars, null om det inte finns någon kontroll på den angivna kolumnen och raden, eller om kontrollen har sin Visible egenskap inställd på false.

Undantag

Antingen column eller row (eller båda) är mindre än 0.

Exempel

Följande kodexempel räknar upp alla cellpositioner i TableLayoutPanel genom att loopa igenom kolumnerna och raderna som anges av ColumnCount och RowCount, och anropar GetControlFromPosition sedan metoden för att hämta kontrollen i varje cell.

private void getcontrolFromPosBtn_Click(
    System.Object sender, 
    System.EventArgs e)
{
    int i = 0;
    int j = 0;
    Trace.WriteLine(this.TableLayoutPanel1.ColumnCount);
    Trace.WriteLine(this.TableLayoutPanel1.RowCount);

    for(i=0; i<=this.TableLayoutPanel1.ColumnCount; i++)
    {
        for(j=0; j<=this.TableLayoutPanel1.RowCount; j++)
        {
            Control c = this.TableLayoutPanel1.GetControlFromPosition(i, j);

            if( c != null )
            {
                Trace.WriteLine(c.ToString());
            }
        }
    }
}
Private Sub getcontrolFromPosBtn_Click( _
ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles getcontrolFromPosBtn.Click


    Trace.WriteLine(Me.TableLayoutPanel1.ColumnCount)
    Trace.WriteLine(Me.TableLayoutPanel1.RowCount)

    For i As Integer = 0 To Me.TableLayoutPanel1.ColumnCount - 1
        For j As Integer = 0 To Me.TableLayoutPanel1.RowCount - 1

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

            If c IsNot Nothing Then

                Trace.WriteLine(c.ToString())

            End If
        Next
    Next

End Sub

Kommentarer

Kolumn- och radpositionsvärdena är nollbaserade.

Gäller för

Se även