2012-03-29 22 views
3

これはC#用です。私はVisual Studio Express 2010でWindows 7環境で作業しています。 ツールストリップコンテナドックを使用して、ユーザーがツールストリップを追加できるようにするアプリケーションがあります。どんなエッジでも。問題は、ツールボックスがサブウィンドウを保持するために使用したいことをカバーしていることでした。 toolstripcontainerを含むプライマリフォームがmdiの親として設定されています。 私は容器の中にサブウインドウを得ることに、この記事が有用であることが判明: How to uses a ToolStripContainer whith Dock=Fill on a MDI parent?ToolstripコンテナパネルをMDI親のように動作させる

しかし、この方法で行うサブウィンドウは、彼らが「ネイティブ」MDI環境で必要として動作するようには思えません。ボーダーは、Windows 7のAeroエフェクトが無効になっているように見え、サブウィンドウを最小限にすると完全に消えてしまいます。

基本的に、ツールストリップのドッキングエリアに囲まれたサブウィンドウ用のMDIエリアが必要です。

答えて

3

は残念ながら、ToolStripContainerコントロールがMDIフォームで動作するものではありませんでしたあなたの助けを

どうもありがとうございました。

代わりにToolStripPanelコントロールを使用してみてください。これはデザイナーでうまく動作しません(これはおそらく、デフォルトではツールボックスに含まれていません)。

例:

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

関連する問題