Delen via


Procedure: Een MenuStrip invoegen in een MDI-Drop-Down-menu (Windows Forms)

In sommige toepassingen kan het type van een MDI-onderliggend venster (Multiple Document Interface) verschillen van het bovenliggende MDI-venster. Een MDI-bovenliggende element kan bijvoorbeeld een spreadsheet zijn en een MDI-kind kan een grafiek zijn. In dat geval wilt u de inhoud van het menu van het MDI-ouder bijwerken met de inhoud van het menu van het MDI-kindvenster wanneer MDI-kindvensters van verschillende soorten worden geactiveerd.

In de volgende procedure worden de eigenschappen IsMdiContainer, AllowMerge, MergeActionen MergeIndex gebruikt om een groep menu-items uit het onderliggende MDI-menu in te voegen in het uitklapdeel van het bovenliggende MDI-menu. Bij sluiting van het MDI-kindvenster worden de ingevoegde menu-items verwijderd uit het MDI-hoofdvenster.

Een MenuStrip in een MDI-vervolgkeuzemenu invoegen

  1. Maak een formulier en stel de eigenschap IsMdiContainer ervan in op true.

  2. Voeg een MenuStrip toe aan Form1 en stel de eigenschap AllowMerge van de MenuStrip in op true.

  3. Voeg een menu-item op het hoogste niveau toe aan de Form1MenuStrip en stel de eigenschap Text in op &File.

  4. Voeg drie submenu-items toe aan de menuopdracht &File en stel de bijbehorende Text-eigenschappen in op &Open, &Import fromen E&xit.

  5. Voeg twee submenu-items toe aan het submenu-item &Import from en stel de bijbehorende Text-eigenschappen in op &Word en &Excel.

  6. Voeg een formulier toe aan het project, voeg een MenuStrip toe aan het formulier en stel de eigenschap AllowMerge van de Form2MenuStrip in op true.

  7. Voeg een menu-item op het hoogste niveau toe aan de Form2MenuStrip en stel de eigenschap Text in op &File.

  8. Voeg submenu-items toe aan het &File menu van Form2 in de volgende volgorde: een ToolStripSeparator, &Save, Save and &Closeen een andere ToolStripSeparator.

  9. Stel de eigenschappen MergeAction en MergeIndex van de Form2 menu-items in, zoals wordt weergegeven in de volgende tabel.

    Menu-item Formulier2 MergeAction-waarde MergeIndex-waarde
    Bestand MatchOnly -1
    Afscheider Invoegen 2
    Opslaan Invoegen 3
    Opslaan en sluiten Invoegen 4
    Afscheider Invoegen 5
  10. Maak een evenementafhandelaar voor het Click-evenement van de &OpenToolStripMenuItem.

  11. Voeg in de gebeurtenishandler code in die vergelijkbaar is met het volgende codevoorbeeld om nieuwe exemplaren van Form2 te maken en weer te geven als MDI-onderliggende elementen van 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. Plaats code die lijkt op het volgende codevoorbeeld in de &OpenToolStripMenuItem om de gebeurtenis-handler te registreren.

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

De code compileren

Voor dit voorbeeld is het volgende vereist:

  • Twee Form besturingselementen genaamd Form1 en Form2.

  • Een MenuStrip besturingselement op Form1 met de naam menuStrip1en een MenuStrip besturingselement op Form2 met de naam menuStrip2.

  • Verwijzingen naar de System en System.Windows.Forms assemblages.

Zie ook