Friday, March 26, 2010

Container-Child Relation for Windows.Forms with no MdiContainer

In a Windows.Forms application, it’s fairly easy to make use of a MdiContainer in a Parent form and create new forms inside it’s container. However, the same result can be obtained with no MdiContainer at all.

You just create a new Form, set it’s TopLevel property to false and add it to the Controls collection of another Form.

ChildForm form = new ChildForm();
form.TopLevel = false;

ParentForm.Controls.Add( form );
form.Show();



As a result, you get a fully draggable child form which can also be minimized and maximized. The only difference between this and MdiContainer would be the lack of a scroller automatically added by the MdiContainer.






2 comments:

Maciej Aniserowicz said...

When I first read it I thought "why the hell would I need that for?"... and now, just a day later, I'm forced to use it:). Thanks.

Application Security said...

Thanks for sharing such a nice information...