TableLayoutPanel.GetControlFromPosition(Int32, Int32) Метод
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает дочерний элемент управления, занимающий заданную позицию.
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
- column
- Int32
Позиция столбца для возвращаемого элемента управления.
- row
- Int32
Позиция строки для возвращаемого элемента управления.
Дочерний элемент управления, занимающий заданную ячейку, или значение null
, если в указанных строке и столбце не существует элемент управления, или свойство Visible элемента управления имеет значение false
.
Значение одного из параметров column
или row
(или обоих параметров) меньше 0.
В следующем примере кода перечисляются все позиции ячеек в TableLayoutPanel , циклически просматривая столбцы и строки, заданные ColumnCount и RowCount, а затем вызывая GetControlFromPosition метод для получения элемента управления в каждой ячейке.
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
Значения позиции столбцов и строк основаны на нулях.
Продукт | Версии |
---|---|
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
Windows Desktop | 3.0, 3.1, 5, 6, 7, 8, 9 |
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: