Porady: wstawianie elementu MenuStrip do menu rozwijanego 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 , , MergeActionAllowMergeiMergeIndex, aby wstawić grupę elementów menu z menu podrzędnego MDI do części rozwijanej menu nadrzędnego MDI. Zamknięcie okna podrzędnego MDI powoduje usunięcie wstawionych elementów menu z elementu nadrzędnego MDI.
Aby wstawić element MenuStrip do menu rozwijanego 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 trzy elementy podrzędne do
&File
elementu menu i ustaw ich Text właściwości na&Open
,&Import from
iE&xit
.Dodaj dwa elementy podrzędne do
&Import from
elementu podmenu i ustaw ich Text właściwości na&Word
i&Excel
.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&File
.Dodaj elementy podrzędne do
&File
menuForm2
w następującej kolejności: a ToolStripSeparator,&Save
,Save and &Close
i inne ToolStripSeparator.MergeAction Ustaw właściwości
Form2
i MergeIndex elementów menu, jak pokazano w poniższej tabeli.Element menu Form2 MergeAction, wartość Wartość mergeIndex Plik MatchOnly -1 Separator Insert 2 Zapisz Insert 3 Zapisz i zamknij Insert 4 Separator Insert 5 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 .
Zobacz też
.NET Desktop feedback
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla