Sdílet prostřednictvím


Postupy: Vložení MenuStrip do nabídky Drop-Down 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 nabídky nadřazeného MDI okna obsahem nabídky podřízeného MDI okna, když jsou aktivována podřízená okna MDI různých typů.

Následující postup používá vlastnosti IsMdiContainer, AllowMerge, MergeActiona MergeIndex k vložení skupiny položek nabídky z podřízené nabídky MDI do rozevírací části nadřazené nabídky MDI. Zavření podřízeného okna MDI odebere vložené položky nabídky z hlavního okna MDI.

Vložení MenuStrip do rozevírací nabídky MDI

  1. Vytvořte formulář a nastavte jeho vlastnost IsMdiContainer na true.

  2. Přidejte MenuStrip k Form1 a nastavte vlastnost AllowMergeMenuStrip na true.

  3. Přidejte položku nabídky nejvyšší úrovně do Form1MenuStrip a nastavte její vlastnost Text na &File.

  4. Přidejte do položky nabídky &File tři podnabídky a nastavte jejich vlastnosti Text na &Open, &Import froma E&xit.

  5. Přidejte do položky podnabídky &Import from dvě podnabídky a nastavte jejich vlastnosti Text na &Word a &Excel.

  6. Přidejte formulář do projektu, vložte do něj MenuStrip a nastavte vlastnost AllowMerge pro Form2MenuStrip na true.

  7. Přidejte položku nabídky nejvyšší úrovně do Form2MenuStrip a nastavte její vlastnost Text na &File.

  8. Do nabídky &File v rámci Form2 přidejte položky podnabídky v následujícím pořadí: ToolStripSeparator, &Save, Save and &Closea další ToolStripSeparator.

  9. Nastavte vlastnosti MergeAction a MergeIndex položek nabídky Form2, 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
  10. Vytvořte obslužnou rutinu pro událost Click&OpenToolStripMenuItem.

  11. 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í Form2 jako podřízených objektů MDI Form1.

    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();  
    }  
    
  12. Do &OpenToolStripMenuItem umístěte kód, podobný následujícímu příkladu, pro registraci obslužné funkce události.

    Private Sub openToolStripMenuItem_Click(sender As Object, e As _  
    EventArgs) Handles openToolStripMenuItem.Click  
    
    this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click);  
    

Kompilace kódu

Tento příklad vyžaduje:

Viz také