You are right, showing new icons for each form of application is wrong. You need to use
Form newForm =
newForm.ShowInTaskbar = false;
newForm.Owner = myMainForm;
Bonus: owner/owned form is another important relationship which is related to showing of the form — its activation; it will support application integrity. You should use
ShowInTaskbar = true
for you main form, only for this one. When you activate this form, other forms will also go on top of Z-order, so no form of other application can be placed in between.
Another way of setting up ownership is
Form.AddOwnedForm
.
See
http://msdn.microsoft.com/en-us/library/system.windows.forms.form.aspx[
^].
—SA