No, you don't open a child form; there is no child/parent relationships between forms. There are owned and owner forms; and I advice you use it by making all non-main forms owned by a main form.
Now, printing. Don't print the form, print the data used to populate the form's control; for that purpose, you need some data layer. In all cases, use the class
System.Drawing.Printing.PrintDocument
.
This help page contains a simple code sample which gives you a good idea of the usage:
http://msdn.microsoft.com/en-us/library/system.drawing.printing.printdocument.aspx[
^].
—SA