Assuming this is Windows Forms:
1 the Form your Panel is sited on can only add space "to the bottom of the Form" ... when Controls are added to the Panel at run-time ... if
the Form 'Autosize and the Panel 'AutoSize are both 'true.
1 set the Panel 'Autosize to 'false, and Panel 'AutoScroll to 'true.
2 as you add Controls at run-time, set the Dock to 'Top, and call 'BringToFront(): that will ensure the order of Controls in the Panel are from first (top) to last (bottom).
UserControl1 uc = new UserControl1();
uc.Dock = DockStyle.Top;
This way you do not need to concern yourself about how many User Controls are in the Panel.