Vorgehensweise: Einfügen eines MenuStrips in ein MDI-Drop-Down-Menü (Windows Forms)
In einigen Anwendungen kann die Art eines untergeordneten MDI-Fensters (Multiple-Document Interface, MDI) vom übergeordneten MDI-Fenster abweichen. Ein Beispiel: Der MDI-Übergeordnete kann eine Kalkulationstabelle sein, und der MDI-Untergeordnete kann ein Diagramm sein. In diesem Fall möchten Sie den Inhalt des Menüs des übergeordneten MDI-Elements mit dem Inhalt des Menüs des untergeordneten MDI-Elements aktualisieren, da untergeordnete MDI-Fenster unterschiedlicher Art aktiviert werden.
Im folgenden Verfahren werden die Eigenschaften IsMdiContainer, AllowMerge, MergeActionund MergeIndex verwendet, um eine Gruppe von Menüelementen aus dem untergeordneten MDI-Menü in den Dropdownteil des übergeordneten MDI-Menüs einzufügen. Durch das Schließen des untergeordneten MDI-Fensters werden die eingefügten Menüelemente aus dem übergeordneten MDI-Fenster entfernt.
So fügen Sie ein MenuStrip in ein MDI-Dropdownmenü ein
Erstellen Sie ein Formular, und legen Sie dessen IsMdiContainer-Eigenschaft auf
true
fest.Fügen Sie MenuStrip zu
Form1
hinzu und legen Sie die AllowMerge-Eigenschaft des MenuStrip auftrue
fest.Fügen Sie ein Menüelement auf oberster Ebene dem
Form1
MenuStrip hinzu und legen Sie dessen Text Eigenschaft auf&File
fest.Fügen Sie dem
&File
Menüelement drei Untermenüelemente hinzu, und legen Sie deren Text Eigenschaften auf&Open
,&Import from
undE&xit
fest.Fügen Sie zwei Untermenüelemente zum
&Import from
-Untermenüelement hinzu und legen Sie deren Text-Eigenschaften auf&Word
und&Excel
fest.Fügen Sie dem Projekt ein Formular hinzu, fügen Sie eine MenuStrip zum Formular hinzu, und legen Sie die Eigenschaft AllowMerge des
Form2
MenuStrip auftrue
fest.Fügen Sie dem
Form2
MenuStrip einen Menüpunkt der obersten Ebene hinzu, und legen Sie dessen Text-Eigenschaft auf&File
fest.Fügen Sie dem Menü
&File
vonForm2
in der folgenden Reihenfolge die Untermenüelemente hinzu: ToolStripSeparator,&Save
,Save and &Close
und ein weiteres ToolStripSeparator.Legen Sie die Eigenschaften MergeAction und MergeIndex der
Form2
Menüeinträge fest, wie in der folgenden Tabelle gezeigt.Formular2-Menüelement "MergeAction"-Wert MergeIndex-Wert Datei MatchOnly -1 Trennvorrichtung Einfügen 2 Retten Einfügen 3 Speichern und Schließen Einfügen 4 Trennzeichen Einfügen 5 Erstellen Sie einen Ereignishandler für das Click-Ereignis der
&Open
ToolStripMenuItem.Fügen Sie im Ereignishandler Code ein, der dem folgenden Codebeispiel ähnelt, um neue Instanzen von
Form2
als MDI-untergeordnete Elemente vonForm1
zu erstellen und anzuzeigen.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(); }
Platzieren Sie einen Code, der dem folgenden Beispiel ähnelt, in der
&Open
ToolStripMenuItem, um den Ereignishandler zu registrieren.Private Sub openToolStripMenuItem_Click(sender As Object, e As _ EventArgs) Handles openToolStripMenuItem.Click
this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click);
Code kompilieren
In diesem Beispiel ist Folgendes erforderlich:
Zwei Form Steuerelemente mit den Bezeichnungen
Form1
undForm2
.Ein MenuStrip-Steuerelement auf
Form1
namensmenuStrip1
und ein MenuStrip-Steuerelement aufForm2
namensmenuStrip2
.Verweise auf die Assemblys System und System.Windows.Forms.
Siehe auch
.NET Desktop feedback