Como: Acrescentar um MenuStrip para uma janela de pai MDI (Windows Forms)
Em alguns aplicativos, o tipo de uma janela filho de interface de documentos múltiplos (MDI) pode ser diferente da janela pai MDI. Por exemplo, o pai MDI pode ser uma planilha e o filho MDI pode ser um gráfico. Nesse caso, você deseja atualizar o conteúdo do menu do pai MDI com o conteúdo do menu do filho MDI, como janelas filho MDI tipos diferentes são ativadas.
O procedimento a seguir usa a IsMdiContainer, AllowMerge, MergeAction, e MergeIndex Propriedades para acrescentar o menu de filho MDI ao menu pai MDI. Fechando a janela filho MDI remove o menu acrescentado pai MDI.
Para obter mais informações, consulte Aplicativos de Interface de Documentos Múltiplos (MDI) e Aplicativos de Interface de Documentos Múltiplos (MDI) e Aplicativos de Interface de Documentos Múltiplos (MDI) e Aplicativos de Interface de Documentos Múltiplos (MDI) e Aplicativos de Interface de Documentos Múltiplos (MDI).
Para acrescentar um item de menu para um MDI pai
Criar um formulário e defina sua IsMdiContainer propriedade para true.
Adicionar um MenuStrip para Form1 e defina a AllowMerge propriedade da MenuStrip para true.
Definir o Visible propriedade da Form1 MenuStrip para false.
Adicionar um item de menu de nível superior para o Form1 MenuStrip e defina seu Text propriedade para &File.
Adicionar um item de submenu para o &File item de menu e definir suas Text propriedade para &Open.
Adicionar um formulário ao projeto, adicione um MenuStrip para o formulário e o conjunto de AllowMerge propriedade da Form2 MenuStrip para true.
Adicionar um item de menu de nível superior para o Form2 MenuStrip e defina seu Text propriedade para &Special.
Adicionar dois itens de submenu para o &Special o item de menu e definir suas Text Propriedades para Command&1 e Command&2, respectivamente.
Definir o MergeAction propriedade da &Special, Command&1, e Command&2 itens de menu para Append.
Criar um manipulador de eventos para o Click o evento da &New ToolStripMenuItem.
Dentro do manipulador de eventos, insira o código semelhante ao seguinte exemplo de código para criar e exibir novas instâncias de Form2 como o filho 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
[C#]
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(); }
Coloque o código semelhante ao seguinte exemplo de código na &Open ToolStripMenuItem para registrar o manipulador de eventos.
Private Sub openToolStripMenuItem_Click(sender As Object, e As _ EventArgs) Handles openToolStripMenuItem.Click
this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click);
Compilando o código
Este exemplo requer:
Dois Form controles denominados Form1 e Form2.
A MenuStrip controle em Form1 chamado menuStrip1e um MenuStrip controle em Form2 chamado menuStrip2.
Referências a System e System.Windows.Forms assemblies.