У меня есть форма, содержащая TableLayout с 1 столбцом и 3 строками, который содержит 2 FlowLayoutPanels и текстовое поле.
Все строки имеют авторазмер, а для столбца установлено значение «Процент = 100%».
Каждая FlowLayoutPanel содержит несколько текстовых блоков.
Панели FlowLayout установлены: 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 установлена неправильно, и он показывает TextBoxes в 1 строке, вырезая некоторые TextBoxes из формы.
Схема:
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.
Кстати, это происходит даже без TableLayout. Я попытался поместить GroupBox (с FlowLayoutPanel) в авторазмерную форму, и я получил то же поведение.
Я думаю, что проблема в том, что когда FlowLayoutPanel находится в другом контейнере, который также имеет авторазмер, он не может перейти в свой контейнер предпочтительного размера.
Что можно сделать, чтобы переопределить эту ошибку ??
Пожалуйста, помогите
Спасибо,
Йорам
p.s: Я должен использовать GroupBox, чтобы иметь красивую рамку вокруг TextBoxes.