Please create TAutoResizePanel. When a child-control on this panel is resized then TAutoResizePanel is automatically resized according to the overlapping value of the child-control. So when the child-control expands its size in the bottom direction, then TAutoResizePanel also expands its size in the bottom direction by this amount, etc. To avoid flickering, TAutoResizePanel should be resized only at the END of the resizing of the child-control. (Otherwise the resizing of the container panel could easily be implemented in the OnResize handler of the child-control and TAutoResizePanel would not be needed) .