One way might be to check how many controls you've added 'on the fly' and what position they're in, name of the control, etc....create a dataset and store that information, and then write it to an XML table.
Then when the form loads, read from the XML table and recreate your controls 'on the fly' again.
Kevin