Практическое руководство. Создание списка в окне интерфейса MDI с помощью MenuStrip (Windows Forms)

Используйте MDI для создания приложений, которые могут открывать одновременно несколько документов, а также копировать и вставлять содержимое из одного документа в другой.

Здесь показаны способы создания списка всех активных дочерних форм в меню родительского окна.

Создание списка в окне интерфейса MDI с помощью MenuStrip

  1. Создайте форму и присвойте ее свойству IsMdiContainer значение true.

  2. Добавьте на форму элемент MenuStrip.

  3. Добавьте два элемента меню верхнего уровня в MenuStrip и задайте для свойств Text значения &File и &Window.

  4. Добавьте два подменю в &File пункт меню и задайте их Text свойства &Open и &New.

  5. Присвойте свойству MdiWindowListItem объекта MenuStrip значение &WindowToolStripMenuItem.

  6. Добавьте форму в проект и добавьте в нее нужный элемент управления, например еще MenuStrip.

  7. Создайте обработчик событий для события Click элемента &NewToolStripMenuItem.

  8. В обработчик событий вставьте код, аналогичный следующему, для создания и отображения новых экземпляров Form2 в качестве дочерних окон MDI Form1.

    Private Sub openToolStripMenuItem_Click(ByVal sender As _  
    System.Object, ByVal e As System.EventArgs) Handles _  
    openToolStripMenuItem.Click  
        Dim NewMDIChild As New Form2()  
        'Set the parent form of the child window.  
            NewMDIChild.MdiParent = Me  
        'Display the new form.  
            NewMDIChild.Show()  
    End Sub  
    
    private void newToolStripMenuItem_Click(object sender, EventArgs e)  
    {  
        Form2 newMDIChild = new Form2();  
        // Set the parent form of the child window.  
            newMDIChild.MdiParent = this;  
        // Display the new form.  
            newMDIChild.Show();  
    }  
    

Компиляция кода

Для этого примера требуются:

  • два элемента управления Form с именами Form1 и Form2;

  • элемент управления MenuStrip на Form1 с именем menuStrip1 и элемент управления MenuStrip на Form2 с именем menuStrip2;

  • ссылки на сборки System и System.Windows.Forms.

См. также