Postupy: Vložení prvku MenuStrip do rozevíracího seznamu MDI (Windows Forms)
V některých aplikacích se druh podřízeného okna s více dokumenty (MDI) může lišit od nadřazeného okna MDI. Nadřazenou položkou MDI může být například tabulka a podřízeným objektem MDI může být graf. V takovém případě chcete aktualizovat obsah nadřazené nabídky MDI obsahem podřízené nabídky MDI jako podřízená okna MDI různých druhů.
Následující postup používá IsMdiContainerk AllowMergeMergeActionvložení skupiny položek nabídky z podřízené nabídky MDI do rozevírací části nadřazené nabídky MDI a MergeIndex vlastnosti. Zavření podřízeného okna MDI odebere vložené položky nabídky z nadřazeného objektu MDI.
Vložení MenuStrip do rozevírací nabídky MDI
Vytvořte formulář a nastavte jeho IsMdiContainer vlastnost na
true
.MenuStrip Přidejte do
Form1
a nastavte AllowMerge vlastnost MenuStrip natrue
hodnotu .Přidejte položku nabídky nejvyšší úrovně do
Form1
MenuStrip a nastavte její Text vlastnost na&File
.Přidejte do
&File
položky nabídky tři podnabídky a nastavte jejich Text vlastnosti na&Open
,&Import from
aE&xit
.Přidejte do
&Import from
podnabídky dvě podnabídky a nastavte jejich Text vlastnosti na&Word
a&Excel
.Přidejte do projektu formulář, přidejte MenuStrip do formuláře a nastavte AllowMerge vlastnost
Form2
MenuStrip natrue
hodnotu .Přidejte položku nabídky nejvyšší úrovně do
Form2
MenuStrip a nastavte její Text vlastnost na&File
.Do nabídky v následujícím pořadí přidejte podnabídky
&File
: a ToolStripSeparator,&Save
,Save and &Close
a další ToolStripSeparator.Form2
MergeAction Nastavte a MergeIndex vlastnosti
Form2
položek nabídky, jak je znázorněno v následující tabulce.Položka nabídky Form2 Hodnota MergeAction MergeIndex – hodnota Soubor MatchOnly -1 Oddělovač Vložit 2 Uložit Vložit 3 Uložit a zavřít Vložit 4 Oddělovač Vložit 5 Vytvořte obslužnou rutinu události pro Click událost události
&Open
ToolStripMenuItem.V obslužné rutině události vložte kód podobný následujícímu příkladu kódu pro vytvoření a zobrazení nových instancí jako podřízených
Form2
Form1
objektů MDI .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(); }
Umístěte kód podobný následujícímu příkladu
&Open
ToolStripMenuItem kódu do registru obslužné rutiny události.Private Sub openToolStripMenuItem_Click(sender As Object, e As _ EventArgs) Handles openToolStripMenuItem.Click
this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click);
Probíhá kompilace kódu
Tento příklad vyžaduje:
Dva Form pojmenované
Form1
ovládací prvky aForm2
.Ovládací MenuStrip prvek s
Form1
názvemmenuStrip1
a MenuStrip ovládací prvek sForm2
názvemmenuStrip2
.Odkazy na sestavení System a System.Windows.Forms sestavení.
Viz také
.NET Desktop feedback