¿Cómo crear dinámicamente controles alineados en la parte superior pero después de otros controles alineados?

En este caso particular estoy usandoPowerPDF biblioteca para crear dinámicamente un documento PDF, pero lo mismo se aplica al concepto general de alinear dinámicamente los controles de forma secuencial dentro de un control principal. En esta biblioteca,TPRPage es el control base que contiene todos los controles de elementos, en este caso, instancias secuenciales deTPRLayoutPanel.

Lo que hago al agregar controles dinámicamente:

Crear un control (TPRLayoutPanel)Establecer el padre del control (TPRPage)Alinee el control hacia arriba (PRLayoutPanel.Align:= alTop;)

El problema es que se ve forzado al principio (parte superior) en lugar del final (parte inferior) de la página.

He intentado establecer su ordenPRLayoutPanel.SendToBack; oPRLayoutPanel.BringToFront pero sin suerte.

¿Cómo puedo crear y alinear dinámicamente varios controles dentro de un control padre de forma secuencial? Mi única alternativa actual es agregar los controles en orden inverso (de principio a fin) que es ridículamente innecesario.

Aquí está mi función universal que crea cada nueva instancia de un control alineado en este padre:

function TfrmReport.InsertPanel: TPRLayoutPanel;
begin
  Result:= TPRLayoutPanel.Create(PRPage);
  Result.Parent:= PRPage;
  Result.Align:= alTop;
  Result.Height:= 40; //Default, may change later
end;

Respuestas a la pregunta(3)

Su respuesta a la pregunta