Я добавил 4 элемента управления, так как myControli
-i - индекс строки - в TableLayoutPanel
. Затем я удалил 3-й ряд программно. Но когда я вызываю TableLayoutPanel.GetRow(myControl3)
, он возвращает 3 как номер строки вместо 2. Почему он не переставляет индексы строк после удаления строки?
private void deleteButton3_Click(object sender, EventArgs e)
{
tableLayoutPanel1.Controls.Remove(button3);
tableLayoutPanel1.RowCount -= 1;
Debug.WriteLine(tableLayoutPanel1.GetRow(button4));
//Returns 3
}
ОБНОВЛЕНИЕ: Я обновил пример кода, чтобы сделать его более четким, и загрузил изображение.
Макет таблицы имеет 4 AutoSize
строк, 1 столбец. Кнопки были добавлены во время разработки.