I am writing an MDI app in .NET.

I want to add buttons to the MDI parent form which show child forms when clicked. I want the child forms to merge with the parent so that the parent's main menu items are still visible.

I have 2 problems:

1.When I show a child form using:

VB Code:
  1. Dim Form1 As New Form1
  2.  
  3.         Form1.MdiParent = Me
  4.         Form1.Show()

you can still see and access the buttons on the parent form even if I add Form1 .BringToFront()

If I remove the line Form1 .MdiParent = Me, the parent form's menu is no longer visible. ie. the child is not contained within the parent.

2.When I click on a button that shows a child form, it creates a new instance of the form each time. How do I activate a previous instance of the form if there is one rather than creating a new instance?