Procedura dettagliata: creazione di un form MDI con unione di menu e controlli ToolStrip
Lo spazio dei nomi System.Windows.Forms supporta le applicazioni MDI (Multiple Document Interface, interfaccia a documenti multipli), mentre il controllo MenuStrip supporta l'unione di menu. I form MDI possono inoltre usare i controlli ToolStrip.
Questa procedura dettagliata illustra come usare ToolStripPanel i controlli con un modulo MDI. Il form supporta anche l'unione dei menu con menu figlio. In questa procedura dettagliata vengono illustrate le attività seguenti:
Creazione di un progetto Windows Forms.
Creazione del menu principale per il modulo. Il nome effettivo del menu varia.
Aggiunta del ToolStripPanel controllo alla casella degli strumenti.
Creazione di un modulo figlio.
Disposizione dei ToolStripPanel controlli in base all'ordine z.
Al termine, si avrà un modulo MDI che supporta l'unione di menu e i controlli mobili ToolStrip .
Per copiare il codice in questo argomento come singolo elenco, vedere Procedura: Creare un modulo MDI con unione di menu e controlli ToolStrip.
Prerequisiti
Per completare questa procedura dettagliata, è necessario Visual Studio.
Creare il progetto
In Visual Studio creare un progetto applicazione Windows denominato MdiForm (File>Nuovo>progetto>Visual C# o Visual Basic>Classico Desktop> Windows Form Applicazione).
Nella finestra di progettazione Windows Form selezionare il modulo.
Nella Finestra Proprietà impostare il valore di IsMdiContainer su
true
.
Creare il menu principale
Il modulo MDI padre contiene il menu principale. Il menu principale ha una voce di menu denominata Window. Con la voce di menu Finestra è possibile creare moduli figlio. Le voci di menu dei moduli figlio vengono unite nel menu principale.
Dalla casella degli strumenti trascinare un MenuStrip controllo nel form.
Aggiungere un oggetto ToolStripMenuItem al MenuStrip controllo e denominarlo Window.
Selezionare il controllo MenuStrip.
Nella Finestra Proprietà impostare il valore della MdiWindowListItem proprietà su
ToolStripMenuItem1
.Aggiungere un elemento secondario alla voce di menu Finestra e quindi denominare l'elemento secondario Nuovo.
Nella Finestra Proprietà fare clic su Eventi.
Fare doppio clic sull'evento Click .
Progettazione Windows Form genera un gestore eventi per l'eventoClick.
Inserire il codice seguente nel gestore eventi.
// This method creates a new ChildForm instance // and attaches it to the MDI parent form. private void newToolStripMenuItem_Click(object sender, EventArgs e) { ChildForm f = new ChildForm(); f.MdiParent = this; f.Text = "Form - " + this.MdiChildren.Length.ToString(); f.Show(); }
' This method creates a new ChildForm instance ' and attaches it to the MDI parent form. Private Sub newToolStripMenuItem_Click( _ ByVal sender As Object, _ ByVal e As EventArgs) _ Handles newToolStripMenuItem.Click Dim f As New ChildForm() f.MdiParent = Me f.Text = "Form - " + Me.MdiChildren.Length.ToString() f.Show() End Sub
Aggiungere il controllo ToolStripPanel alla casella degli strumenti
Quando si usano MenuStrip controlli con un modulo MDI, è necessario disporre del ToolStripPanel controllo . È necessario aggiungere il ToolStripPanel controllo alla casella degli strumenti per compilare il modulo MDI nella finestra di progettazione Windows Form.
Aprire la casella degli strumenti e quindi fare clic sulla scheda Tutti Windows Form per visualizzare i controlli Windows Form disponibili.
Fare clic con il pulsante destro del mouse per aprire il menu di scelta rapida e scegliere Scegli elementi.
Nella finestra di dialogo Scegli elementi della casella degli strumenti scorrere verso il basso fino a trovare ToolStripPanel.
Selezionare la casella di controllo per ToolStripPanel e quindi fare clic su OK.
Il ToolStripPanel controllo viene visualizzato nella casella degli strumenti.
Creare un modulo figlio
In questa procedura si definirà una classe di form figlio separata con il proprio MenuStrip controllo. Le voci di menu per questo modulo vengono unite a quelle del modulo padre.
Aggiungere un nuovo modulo denominato
ChildForm
al progetto.Per altre informazioni, vedere Procedura: Aggiungere Windows Form a un progetto.
Dalla casella degli strumenti trascinare un MenuStrip controllo nel form figlio.
Fare clic sul MenuStrip glifo delle azioni della finestra di progettazione del controllo () e quindi selezionare Modifica elementi.
Nella finestra di dialogo Editor raccolta elementi aggiungere un nuovo ToolStripMenuItem elemento ChildMenuItem denominato al menu figlio.
Per altre informazioni, vedere ToolStrip Items Collection Editor.
Verificare il modulo
Premere F5 per compilare ed eseguire il modulo.
Fare clic sulla voce di menu Finestra per aprire il menu e quindi fare clic su Nuovo.
Viene creato un nuovo modulo figlio nell'area client MDI del modulo. Il menu del modulo figlio viene unito al menu principale.
Chiudere il form figlio.
Il menu del modulo figlio viene rimosso dal menu principale.
Fare clic su Nuovo più volte.
I moduli figlio vengono elencati automaticamente sotto la voce di menu Finestra perché viene assegnata la MenuStrip proprietà del MdiWindowListItem controllo.
Aggiungere il supporto toolStrip
In questa procedura verranno aggiunti quattro ToolStrip controlli al modulo padre MDI. Ogni ToolStrip controllo viene aggiunto all'interno di un ToolStripPanel controllo, ancorato al bordo del form.
Dalla casella degli strumenti trascinare un ToolStripPanel controllo nel form.
Con il ToolStripPanel controllo selezionato, fare doppio clic sul ToolStrip controllo nella casella degli strumenti.
Nel controllo viene creato un ToolStripToolStripPanel controllo .
Selezionare il controllo ToolStripPanel.
Nella Finestra Proprietà modificare il valore della proprietà del Dock controllo in Left.
Il ToolStripPanel controllo è ancorato al lato sinistro della maschera, sotto il menu principale. L'area client MDI viene ridimensionata in base al ToolStripPanel controllo.
Ripetere i passaggi da 1 a 4.
Ancorare il nuovo ToolStripPanel controllo all'inizio del form.
Il ToolStripPanel controllo è ancorato sotto il menu principale, ma a destra del primo ToolStripPanel controllo. Questo passaggio illustra l'importanza dell'ordine z nei controlli di posizionamento ToolStripPanel corretto.
Ripetere i passaggi da 1 a 4 per altri due ToolStripPanel controlli.
Ancorare i nuovi ToolStripPanel controlli a destra e in basso al form.
Disporre i controlli ToolStripPanel per ordine Z
La posizione di un controllo ancorato ToolStripPanel nel form MDI è determinata dalla posizione del controllo nell'ordine z. È possibile disporre facilmente l'ordine z dei controlli nella finestra Struttura documento.
Scegliere Altre finestre dal menu Visualizza e quindi fare clic su Struttura documento.
La disposizione dei ToolStripPanel controlli della procedura precedente non è standard. Questo perché l'ordine z non è corretto. Utilizzare la finestra Struttura documento per modificare l'ordine z dei controlli.
Nella finestra Struttura documento selezionare ToolStripPanel4.
Fare clic ripetutamente sul pulsante freccia giù fino a quando ToolStripPanel4 non si trova nella parte inferiore dell'elenco.
Il controllo ToolStripPanel4 è ancorato alla parte inferiore della maschera, sotto gli altri controlli.
Selezionare ToolStripPanel2.
Fare clic sul pulsante freccia giù una volta per posizionare il terzo controllo nell'elenco.
Il controllo ToolStripPanel2 è ancorato alla parte superiore della maschera, sotto il menu principale e sopra gli altri controlli.
Selezionare vari controlli nella finestra Struttura documento e spostarli in posizioni diverse nell'ordine z. Si noti l'effetto dell'ordine z sul posizionamento dei controlli ancorati. Usare CTRL-Z o Annulla dal menu Modifica per annullare le modifiche.
Checkpoint : testare il modulo
Premere F5 per compilare ed eseguire il modulo.
Fare clic sul grip di un ToolStrip controllo e trascinare il controllo in posizioni diverse nel form.
È possibile trascinare un controllo da un ToolStripToolStripPanel controllo a un altro.
Passaggi successivi
In questa procedura dettagliata è stata creata una maschera padre MDI con ToolStrip controlli e unione di menu. È possibile usare la ToolStrip famiglia di controlli per molti altri scopi:
Creare menu di scelta rapida per i controlli con ContextMenuStrip. Per altre informazioni, vedere Cenni preliminari sul componente ContextMenu.
Creazione di un modulo con un menu standard popolato automaticamente. Per altre informazioni, vedere Procedura dettagliata: Fornire voci di menu standard a un modulo.
Dare ai controlli ToolStrip un aspetto professionale. Per altre informazioni, vedere Procedura: Impostare il renderer ToolStrip per un'applicazione.
Vedi anche
.NET Desktop feedback