Partager via


TableLayoutPanel.GetControlFromPosition(Int32, Int32) Méthode

Définition

Retourne le contrôle enfant occupant la position spécifiée.

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

Paramètres

column
Int32

Position de colonne du contrôle à récupérer.

row
Int32

Position de ligne du contrôle à récupérer.

Retours

Contrôle enfant occupant la cellule spécifiée ; sinon, null, si aucun contrôle n'existe à l'emplacement correspondant à la colonne et la cellule spécifiées, ou si la propriété Visible du contrôle a la valeur false.

Exceptions

column ou row est inférieur à 0 (ou les deux).

Exemples

L’exemple de code suivant énumère toutes les positions de cellule dans le en effectuant une TableLayoutPanel boucle dans les colonnes et les lignes données par ColumnCount et RowCount, puis en appelant la GetControlFromPosition méthode pour récupérer le contrôle à chaque cellule.

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

Remarques

Les valeurs de position de colonne et de ligne sont basées sur zéro.

S’applique à

Voir aussi