In code is the way forward...
Have a look at this video ...
http://www.youtube.com/watch?v=8JkbQY93xYY[
^]
Microsoft blurb is
here[
^]
Lots more examples by google search
dynamically load controls at runtime c# "
Most of the examples I've seen just put the controls onto the form - you will need to add them to the containing panel so instead of
form1.Controls.Add(...
you'll use something like
panel1.Controls.Add(...