Porady: dołączanie formantu MenuStrip do nadrzędnego okna MDI (Formularze systemu Windows)

W niektórych aplikacjach rodzaj okna podrzędnego interfejsu wielodokumentowego (MDI) może różnić się od okna nadrzędnego MDI. Na przykład element nadrzędny MDI może być arkuszem kalkulacyjnym, a element podrzędny MDI może być wykresem. W takim przypadku chcesz zaktualizować zawartość menu nadrzędnego MDI z zawartością menu podrzędnego MDI jako okna podrzędne MDI różnych rodzajów są aktywowane.

Poniższa procedura używa IsMdiContainerwłaściwości , AllowMerge, MergeActioni MergeIndex , aby dołączyć menu podrzędne MDI do menu nadrzędnego MDI. Zamknięcie okna podrzędnego MDI spowoduje usunięcie dołączonego menu z elementu nadrzędnego MDI.

Zobacz również Temat Multiple-Document Interface (MDI) Applications (Aplikacje z wieloma dokumentami).

Aby dołączyć element menu do elementu nadrzędnego MDI

  1. Utwórz formularz i ustaw jego IsMdiContainer właściwość na true.

  2. Dodaj element MenuStrip do Form1 i ustaw AllowMerge właściwość właściwości MenuStrip na true.

  3. Visible Ustaw właściwość elementu Form1MenuStrip na false.

  4. Dodaj element menu najwyższego poziomu do Form1MenuStrip obiektu i ustaw jego Text właściwość na &File.

  5. Dodaj element podmenu do &File elementu menu i ustaw jego Text właściwość na &Open.

  6. Dodaj formularz do projektu, dodaj element MenuStrip do formularza i ustaw AllowMerge właściwość na Form2MenuStrip true.

  7. Dodaj element menu najwyższego poziomu do Form2MenuStrip obiektu i ustaw jego Text właściwość na &Special.

  8. Dodaj dwa elementy podrzędne do &Special elementu menu i ustaw ich Text właściwości odpowiednio na Command&1 i Command&2.

  9. MergeAction Ustaw właściwość &Specialelementów menu , Command&1i Command&2 na Appendwartość .

  10. Utwórz procedurę obsługi zdarzeń dla Click zdarzenia &Open ToolStripMenuItem.

  11. W programie obsługi zdarzeń wstaw kod podobny do poniższego przykładu kodu, aby utworzyć i wyświetlić nowe wystąpienia jako elementy podrzędne Form2 MDI klasy 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 openToolStripMenuItem_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();  
    }  
    
  12. Umieść kod podobny do poniższego przykładu kodu w pliku &OpenToolStripMenuItem , aby zarejestrować procedurę obsługi zdarzeń.

    Private Sub openToolStripMenuItem_Click(sender As Object, e As _  
    EventArgs) Handles openToolStripMenuItem.Click  
    
    this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click);  
    

Kompilowanie kodu

Ten przykład wymaga: