HOW TO:從 MDI 下拉式功能表移除 ToolStripMenuItem (Windows Form)

在某些應用程式中,多重文件介面 (MDI) 子視窗的類型可能會與 MDI 父視窗不同。 例如,MDI 父視窗可能是試算表,而 MDI 子視窗則可能是圖表。 在此情形下,您要以 MDI 子視窗功能表的內容更新 MDI 父視窗功能表的內容,因為已啟動各種不同的 MDI 子視窗。

下列程序使用 IsMdiContainerAllowMergeMergeActionMergeIndex 屬性,將功能表項目從 MDI 父功能表的下拉式組件中移除。 關閉 MDI 子視窗,會將移除的功能表項目復原至 MDI 父功能表中。

若要將 MenuStrip 從 MDI 下拉式功能表中移除

  1. 建立表單,並將其 IsMdiContainer 屬性設定為 true。

  2. 加入 MenuStrip 至 Form1,並將 MenuStripAllowMerge 屬性設定為 true。

  3. 將最上層的功能表項目加入至 Form1 MenuStrip 中,並將該項目的 Text 屬性設定為 &File。

  4. 將三個子功能表項目加入至 &File 功能表項目,並將其 Text 屬性設為 &Open、&Import from 和 E&xit。

  5. 將兩個子功能表項目加入至 &Import from 子功能表項目,並將其 Text 屬性設為 &Word 和 &Excel。

  6. 將表單加入至專案,並將 MenuStrip 加入至表單,然後將 Form2 MenuStripAllowMerge 屬性設定為 true。

  7. 將最上層的功能表項目加入至 Form2 MenuStrip 中,並將該項目的 Text 屬性設定為 &File。

  8. 將 &Import from 子功能表項目加入至 Form2 的 &File 功能表並且將 &Word 子功能表項目加入至 &File 功能表。

  9. 請按照下表所示來設定 Form2 功能表項目的 MergeActionMergeIndex 屬性。

    Form2 功能表項目

    MergeAction 值

    MergeIndex 值

    File

    MatchOnly

    -1

    Import from

    MatchOnly

    -1

    Word

    Remove

    -1

  10. 請在 Form1 中,為 &Open ToolStripMenuItemClick 事件建立事件處理常式。

  11. 在事件處理常式中,插入類似下列程式碼範例的程式碼,以建立和顯示 Form2 的新執行個體,如同 Form1 的 MDI 子系:

    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();
    }
    
  12. 將類似下列程式碼範例的程式碼放入 &Open ToolStripMenuItem 之中,以註冊事件處理常式。

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

編譯程式碼

這個範例需要:

請參閱

工作

HOW TO:建立 MDI 父表單

HOW TO:建立 MDI 子表單

參考

MenuStrip 控制項概觀 (Windows Form)