Nasıl yapılır: Bir MDI Açılan Menüsünden ToolStripMenuItem kaldırma (Windows Forms)
Bazı uygulamalarda, çok belgeli arabirim (MDI) alt penceresinin tür MDI üst penceresinden farklı olabilir. Örneğin, MDI üst öğesi bir elektronik tablo, MDI alt öğesi ise bir grafik olabilir. Bu durumda, MDI üst menüsünün içeriğini, farklı türlerde MDI alt pencereleri etkinleştirildiğindeN MDI alt menüsünün içeriğiyle güncelleştirmek istersiniz.
Aşağıdaki yordam, IsMdiContainer AllowMerge MergeAction MDI üst menüsünün açılan kısmından bir menü öğesini kaldırmak için , , ve MergeIndex özelliklerini kullanır. MDI alt penceresinin kapatılması, kaldırılan menü öğelerini MDI üst menüsüne geri yüklemenizi sağlar.
MDI açılan menüsünden MenuStrip'i kaldırmak için
Bir form oluşturun ve özelliğini IsMdiContainer olarak
trueayarlayın.için bir MenuStrip ekleyin ve özelliğini olarak
Form1AllowMerge MenuStriptrueayarlayın.üzerine bir üst düzey menü öğesi ekleyin
Form1MenuStrip ve özelliğini olarak Text&Fileayarlayın.Menü öğesine üç alt öğe
&Fileekleyin ve özelliklerini , ve olarak Text&Open&Import fromE&xitayarlayın.Alt menü öğesine iki alt
&Import frommenü öğesi ekleyin ve özelliklerini ve olarak Text&Word&Excelayarlayın.Projeye bir form ekleyin, forma MenuStrip bir ekleyin ve özelliğini olarak AllowMerge
Form2MenuStriptrueayarlayın.üzerine bir üst düzey menü öğesi ekleyin
Form2MenuStrip ve özelliğini olarak Text&Fileayarlayın.menüsüne
&Import frombir alt menü öğesi ekleyin ve&FileForm2menüye bir alt menü öğesi&Word&Fileekleyin.Menü MergeAction MergeIndex öğelerinin ve
Form2özelliklerini aşağıdaki tabloda gösterildiği gibi ayarlayın.Form2 menü öğesi MergeAction değeri MergeIndex değeri Dosya MatchOnly -1 İçeri aktarma MatchOnly -1 Word Kaldır -1 içinde,
Form1olayı için bir olay Click işleyicisi&OpenToolStripMenuItem oluşturun.Olay işleyicisi içinde, yeni örneklerini oluşturmak ve MDI'nin children olarak görüntülemek için aşağıdaki
Form2kod örneğine benzer bir kodForm1ekleyin: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 Subprivate 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(); }Olay işleyicisini kaydetmek için aşağıdaki kod
&OpenToolStripMenuItem örneğine benzer bir kod ekleyin.Private Sub openToolStripMenuItem_Click(sender As Object, e As _ EventArgs) Handles openToolStripMenuItem.Clickthis.openToolStripMenuItem.Click += new _ System.EventHandler(this.openToolStripMenuItem_Click);
Kod Derleniyor
Bu örnek şunları gerektirir:
ve Form adlı iki
Form1Form2denetim.üzerinde MenuStrip adlı bir denetim ve adlı üzerinde bir
Form1menuStrip1MenuStripForm2menuStrip2denetim.ve System System.Windows.Forms derlemelerine başvurular.