Мне очень сложно работать с FlowLayoutPanel.
У меня есть приложение Winforms с FLP (FlowLayoutPanel) с одним дочерним элементом управления - tabControl (с веб-браузером в нем). Форма также имеет прикрепленную сверху TableLayoutPanel и еще одну TableLayoutPanel снизу. Итак, я намерен заполнить пространство между этими TLP с помощью FlowLayoutPanel. Все элементы управления добавляются в форму в режиме конструктора.
Что мне нужно - когда я изменяю размер формы, FLP должен хорошо изменять размер вместе с ним, заполняя форму, и tabControl также должен заполнять FLP.
Форма настроена на работу в развернутом виде, поэтому первое изменение размера происходит по умолчанию, когда я запускаю приложение - в этот момент FLP и его элемент управления не меняют размер, если я специально не сообщу им об этом в обработчике событий Form_Layout.
Проблема в том, что независимо от того, какую комбинацию изменений размера, якорей и док-станций я пробую в этом обработчике событий, всегда верхняя или нижняя часть tabControl находится вне области формы, и я не вижу полную полосу прокрутки веб-браузера. в этом; поэтому элемент управления вкладкой неправильно закреплен внутри FLP (или FLP не закреплен в форме), даже если я скажу, что это так. Вот код Form_layout:
private void MyForm_Layout(object sender, LayoutEventArgs e)
{
//resize FLP
pnlMainFlowLayout.Size = this.Size - new Size(15, 0);
pnlMainFlowLayout.Dock = DockStyle.Fill;
pnlMainFlowLayout.BringToFront();
//resize child control of FLP
tabControl.Size = pnlMainFlowLayout.Size;
tabControl.BringToFront();
}
Мне действительно нужно понять поведение FlowLayoutPanel при изменении размера.
Dock
, установленным наDockStyle.Fill
? - person Patrick   schedule 12.09.2010