Gewusst wie: Einfügen eines MenuStrip in ein MDI-Dropdownmenü (Windows Forms)
In einigen Anwendungen kann sich die Art eines untergeordneten MDI-Fensters (Multiple-Document Interface) von der des übergeordneten MDI-Fensters unterscheiden. Beispielsweise könnte das übergeordnete MDI-Fenster eine Kalkulationstabelle und das untergeordnete MDI-Fenster ein Diagramm enthalten. In diesem Fall möchten Sie möglicherweise den Inhalt des Menüs des übergeordneten MDI-Fensters mit dem Inhalt des Menüs des untergeordneten MDI-Fensters aktualisieren, da untergeordnete MDI-Fenster unterschiedlicher Arten aktiviert werden.
In der folgenden Prozedur werden die Eigenschaften IsMdiContainer, AllowMerge, MergeAction und MergeIndex zum Einfügen einer Gruppe von Menüelementen aus dem untergeordneten MDI-Menü in den Dropdownbereich des übergeordneten MDI-Menüs verwendet. Beim Schließen des untergeordneten MDI-Fensters werden die eingefügten Menüelemente aus dem übergeordneten MDI-Fenster entfernt.
So fügen Sie einen MenuStrip in ein MDI-Dropdownmenü ein
Erstellen Sie ein Formular, und legen Sie dessen IsMdiContainer-Eigenschaft auf
true
fest.Fügen Sie einen MenuStrip zu
Form1
hinzu, und legen Sie die AllowMerge-Eigenschaft des MenuStrip auftrue
festFügen Sie ein Menüelement der obersten Ebene zu
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 dem
&Import from
-Untermenüelement zwei Untermenüelemente hinzu, und legen Sie deren Text-Eigenschaften auf&Word
und&Excel
fest.Fügen Sie dem Projekt ein Formular hinzu, fügen Sie dem Formular ein MenuStrip hinzu, und legen die AllowMerge-Eigenschaft von
Form2
MenuStrip auftrue
fest.Fügen Sie ein Menüelement der obersten Ebene zu
Form2
MenuStrip hinzu, und legen Sie dessen Text-Eigenschaft auf&File
fest.Fügen Sie dem
&File
-Menü vonForm2
in der folgenden Reihenfolge Untermenüelemente hinzu: ToolStripSeparator,&Save
,Save and &Close
und ToolStripSeparator.Legen Sie die Eigenschaften MergeAction undMergeIndex der
Form2
-Menüelemente wie in der folgenden Tabelle dargestellt fest.Form2-Menüelement MergeAction-Wert MergeIndex-Wert Datei MatchOnly -1 Trennzeichen Einfügen 2 Speichern Einfügen 3 Speichern und schließen Einfügen 4 Trennzeichen Einfügen 5 Erstellen Sie einen Ereignishandler für das Click-Ereignis von
&Open
ToolStripMenuItem.Fügen Sie im Ereignishandler Code ein, der dem folgenden Codebeispiel ähnelt, um neue Instanzen von
Form2
als untergeordnete MDI-Fenster 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(); }
Fügen Sie Code, der dem folgenden Codebeispiel ähnelt, in
&Open
ToolStripMenuItem ein, 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);
Kompilieren des Codes
Für dieses Beispiel benötigen Sie Folgendes:
Zwei Form-Steuerelemente namens
Form1
undForm2
.Ein MenuStrip-Steuerelement auf
Form1
, das den NamenmenuStrip1
hat, und ein MenuStrip-Steuerelement aufForm2
, das den NamenmenuStrip2
hat.Verweise auf die Assemblys System und System.Windows.Forms.
Weitere Informationen
.NET Desktop feedback