Condividi tramite


Procedura: Inserire un MenuStrip in un menu MDI Drop-Down (Windows Forms)

In alcune applicazioni, il tipo di finestra figlio MDI (Multiple Document Interface) può essere diverso dalla finestra padre MDI. Ad esempio, l'elemento padre MDI potrebbe essere un foglio di calcolo e il figlio MDI potrebbe essere un grafico. In tal caso, è necessario aggiornare il contenuto del menu del MDI genitore con il contenuto del menu del MDI figlio, man mano che vengono attivate le finestre figlio MDI di tipi diversi.

Nella procedura seguente vengono utilizzate le proprietà IsMdiContainer, AllowMerge, MergeActione MergeIndex per inserire un gruppo di voci di menu dal menu figlio MDI nella sezione a discesa del menu principale MDI. La chiusura della finestra figlio MDI rimuove le voci di menu inserite dalla finestra padre MDI.

Per inserire un MenuStrip in un menu a discesa MDI

  1. Creare un modulo e impostare la proprietà IsMdiContainer su true.

  2. Aggiungere un MenuStrip a Form1 e impostare la proprietà AllowMerge del MenuStrip su true.

  3. Aggiungere una voce di menu di primo livello alla Form1MenuStrip e impostarne la proprietà Text su &File.

  4. Aggiungere tre sottomenu alla voce di menu &File e impostare le relative proprietà di Text su &Open, &Import frome E&xit.

  5. Aggiungere due elementi del sottomenu all'elemento del sottomenu &Import from e impostarne le proprietà Text su &Word e &Excel.

  6. Aggiungere un modulo al progetto, aggiungere un MenuStrip al modulo e impostare la proprietà AllowMerge del Form2MenuStrip a true.

  7. Aggiungere una voce di menu di primo livello alla Form2MenuStrip e impostarne la proprietà Text su &File.

  8. Aggiungere elementi del sottomenu al menu &File di Form2 nell'ordine seguente: un ToolStripSeparator, &Save, Save and &Closee un altro ToolStripSeparator.

  9. Impostare le proprietà MergeAction e MergeIndex delle voci di menu Form2, come illustrato nella tabella seguente.

    Voce di menu Form2 Valore MergeAction Valore MergeIndex
    File MatchOnly -1
    Separatore Inserire 2
    Salvare Inserire 3
    Salva e chiudi Inserire 4
    Separatore Inserire 5
  10. Creare un gestore eventi per l'evento Click del &OpenToolStripMenuItem.

  11. All'interno del gestore eventi inserire codice simile all'esempio di codice seguente per creare e visualizzare nuove istanze di Form2 come elementi figlio MDI di 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. Inserire codice simile all'esempio di codice seguente nel &OpenToolStripMenuItem per registrare il gestore eventi.

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

Compilazione del codice

Questo esempio richiede:

Vedere anche