2012-03-29 46 views
3

這是C#和我使用Visual Studio Express的2010 在Windows 7環境下我有一個應用程序,我有一個toolstripcontainer碼頭設置,以填補,因此用戶可以添加toolstrips工作在任何邊緣。問題在於toolstripcontainer已經覆蓋了我想用來保存子窗口的內容。包含toolstripcontainer的主窗體已被設置爲mdi父窗體。 我發現這篇文章中得到子窗口放入容器有用: How to uses a ToolStripContainer whith Dock=Fill on a MDI parent?製作Toolstripcontainer面板的工作就像一個MDI父

然而,這樣做的子窗口似乎並沒有表現,因爲他們應該在「天然」 MDI環境。寄宿生看起來好像Windows 7 Aero效果已被禁用,最小化子窗口使其完全消失。

本質上我想要一個工具條停靠區域包圍的子窗口的MDI區域。

非常感謝您的幫助

回答

3

不幸的是,ToolStripContainer控制並不意味着與MDI的形式工作。

請嘗試使用ToolStripPanel控件。它在設計器中效果不佳(這可能是默認情況下不在ToolBox中的原因)。

例子:

public partial class Form1 : Form { 

    public Form1() { 
    InitializeComponent(); 

    this.IsMdiContainer = true; 
    ToolStripPanel leftPanel = new ToolStripPanel() { Dock = DockStyle.Left }; 
    ToolStripPanel topPanel = new ToolStripPanel() { Dock = DockStyle.Top }; 
    this.Controls.Add(leftPanel); 
    this.Controls.Add(topPanel); 

    ToolStrip ts = new ToolStrip() { Dock = DockStyle.Fill }; 
    ToolStripButton tsb = new ToolStripButton("Test", SystemIcons.Application.ToBitmap()); 
    ts.Items.Add(tsb); 

    topPanel.Controls.Add(ts); 
    } 
} 
+0

我在窗體設計器的代碼來實現這一點,它很好地解決。非常感謝你的幫助! – Pyro 2012-03-30 13:33:25

相關問題