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
Utwórz formularz i ustaw jego IsMdiContainer właściwość na
true
.Dodaj element MenuStrip do
Form1
i ustaw AllowMerge właściwość właściwości MenuStrip natrue
.Dodaj element menu najwyższego poziomu do
Form1
MenuStrip obiektu i ustaw jego Text właściwość na&File
.Dodaj element podmenu do
&File
elementu menu i ustaw jego Text właściwość na&Open
.Dodaj formularz do projektu, dodaj element MenuStrip do formularza i ustaw AllowMerge właściwość na
Form2
MenuStriptrue
.Dodaj element menu najwyższego poziomu do
Form2
MenuStrip obiektu i ustaw jego Text właściwość na&Special
.Dodaj dwa elementy podrzędne do
&Special
elementu menu i ustaw ich Text właściwości odpowiednio naCommand&1
iCommand&2
.MergeAction Ustaw właściwość
&Special
elementów menu ,Command&1
iCommand&2
na Appendwartość .Utwórz procedurę obsługi zdarzeń dla Click zdarzenia
&Open
ToolStripMenuItem.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 klasyForm1
.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(); }
Umieść kod podobny do poniższego przykładu kodu w pliku
&Open
ToolStripMenuItem , 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:
Dwie Form kontrolki o nazwach
Form1
iForm2
.Kontrolka MenuStrip o
Form1
nazwiemenuStrip1
i kontrolka MenuStrip oForm2
nazwiemenuStrip2
.Odwołania do zestawów System i System.Windows.Forms .
.NET Desktop feedback