Cannnot resize Child Controls in a FlowLayoutPanel Control
Description I was trying to create a FlowLayoutPanel that can be extended, for instance in the horizontal way.
FlowLayoutPanel and its sub component anchor has been set to Top-Left-Right
FlowLayoutPanel direction has been set to TopDown.
-> When rezising the FlowLayoutPanel, its sub- components are not resized accordinally.
Step to reproduce
Create a FlowLayoutPanel control on your form.
Set the FlowDirection of the FlowLayoutPanel to TopDown.
开发者_Go百科Create a Button controls, and place it in the FlowLayoutPanel control.
Select the Button and the FlowLayoutPanel and set their Anchor to Top-Left-Right
Try to Extend FlowLayoutPanel on the horizontal way.
-> FlowLayoutPanel is resized but not the Button
The FlowLayoutPanel is only meant to layout it's child controls in a dynamic way. This does not mean that they will automatically resize within the FlowLayoutPanel. I'm guessing that the FlowLayoutPanel ignores the Anchor properties of it's child controls.
To achieve this effect you'll need to manually resize your child controls on the FlowLayoutPanel's SizeChanged event.
At this point though, you may want to reconsider whether the FlowLayoutPanel is really what you want to be using. If you know that you always want a button to fill the width of the FlowLayoutPanel, you might as well stick it in a Panel and use the anchors, or set it's Dock property.
FlowLayoutPanel control calculates the width of an implied column from the widest child control in the column. All other controls in this column with Anchor or Dock properties are aligned or stretched to fit this implied column. The behavior works in a similar way for horizontal flow directions. The FlowLayoutPanel control calculates the height of an implied row from the tallest child control in the row, and all docked or anchored child controls in this row are aligned or sized to fit the implied row.
check msdn documentation here http://msdn.microsoft.com/en-us/library/ms171633.aspx
精彩评论