У меня есть форма, содержащая TableLayout с 1 столбцом и 3 строками, которая содержит 2 FlowLayoutPanel и текстовое поле. Все строки имеют AutoSize, а для столбца установлено значение Percentage = 100 %.
Каждая FlowLayoutPanel содержит несколько текстовых полей. FlowLayoutPanels установлены: LeftToRight, AutoSize = true, GrowAndShrink, Docking = Fill.
Схема такова:
Form
TableLayout (Dock=Fill)
FlowLayoutPanel(Dock=Fill, AutoSize=True, GrowShrink)
More controls
FlowLayoutPanel(Dock=Fill, AutoSize=True, GrowShrink)
More controls
TextBox(Dock=Fill, MultiLine=true)
Проблема в том, что если я помещаю FlowLayoutPanel в GroupBox, для которого также установлено значение AutoSize = true, высота FlowLayoutPanel устанавливается неправильно, и он показывает текстовые поля в одной строке, вырезая некоторые текстовые поля. формы.
Схема такая:
Form
TableLayout (Dock=Fill)
GroupBox (Dock=Fill, AutoSize=True, GrowShrink)
FlowLayoutPanel(Dock=Fill, AutoSize=True, GrowShrink)
More controls
GroupBox (Dock=Fill, AutoSize=True, GrowShrink)
FlowLayoutPanel(Dock=Fill, AutoSize=True, GrowShrink)
More controls
TextBox(Dock=Fill, MultiLine=true)
Кстати, то же самое происходит, если я использую вместо GroupBox, Panel или даже UserControl для хранения FlowLayoutPanel.
Кстати 2, это происходит даже без TableLayout. Я попытался разместить GroupBox (с FlowLayoutPanel) в форме AutoSized, и у меня такое же поведение.
Я думаю, что проблема в том, что когда FlowLayoutPanel находится в другом контейнере, который также является AutoSized, он не может передать его контейнеру предпочтительного размера.
Что можно сделать, чтобы исправить эту ошибку ??
Пожалуйста, помогите Спасибо, Йорам
p.s: Я должен использовать GroupBox, чтобы иметь красивую рамку вокруг текстовых полей.