TableLayoutPanel Размер Последней Строки Слишком Большой
мое приложение использует TableLayoutPanel, который находится в странице табуляции.
Если количество элементов, которые я добавляю, относительно мало (т. е. оно не "заполняет" всю страницу вкладки), то высота последней строки растягивается. Вот скриншот того, что происходит:
Я попытался изменить свойства таблицы на Autosize, GrowAndShrink и т. д. но, кажется, ничто не мешает этому случиться.
вот мои текущие настройки для свойств макета таблицы:
Как я могу получить последнюю строку того же размера, что и другие строки?
спасибо
4 ответов
на основе вашего дизайна и ваших требований я предлагаю вам сделать Dock
собственность TableLayoutPanel
вверх.
у меня просто была очень похожая проблема. Наполнение TableLayoutPanel
программно (с автопрокруткой) и последняя строка оказалась слишком высокой. Работа в доке мне не подходила.
исправлено путем добавления пустого Label
в последнем ряду. Он "занимает" последнюю строку, но не виден. Для меня достаточно.
использование свойства dock решает проблему высоты последней строки, но создает другую, изменяя ширину таблицы в соответствии с шириной контейнера (100%). Я хотел, чтобы высота в последней строке была правильной, но я не хочу, чтобы принудительная ширина 100%.
вместо использования свойства Dock я использовал:
AutoSizeMode = AutoSizeMode.GrowAndShrink
это сделало autosize работать правильно на последней строке и столбце.
У меня была аналогичная проблема, когда последняя строка всегда была слишком высокой в TLP с большим количеством строк, чем могло поместиться, используя AutoScroll.
решение состояло в том, чтобы отключить Автопрокрутку, установить размеры строк из коллекции строк TLP, а затем снова включить Автопрокрутку.