title: Which design pattern to manage windows?
body: <p>I am using .NET 2.0 &amp; C# to develop a WinForm Mdi application. It will have a Main Window and a lot of mdi windows. I am thinking I should use which design pattern to manage mdi windows. Because I want only one instance for each window, if window is existed, I will show it on top, &amp; otherwise I will create and show it.</p>
  
  <p><strong>Note:</strong> a mdi window is opened from Menus of Main Window or open from another mdi window. An example is very good.</p>
  
  <p><strong>Update:</strong> Menu's status is depended on mdi window's status. Ex: If Window 'A' is openned -> menu 'A' -> disabled. When window 'A' is closed -> I update menu 'A' status to Enabled.</p>
  
  <p>Thanks.</p>