2014年10月22日

C#ツールバーのDockをTopにしてもClientで隠される

C# でフォームデザインしているときに地味に困ったのが以下の現象です。

・フォーム上にツールバーを配置する
・ツールバーの Dock を Top に設定してフォームの上に貼りつくようにする
・ツールバーの下側に適当なパネルを配置する
・パネルの Dock を Client に設定する

すると... !!
なんと ツールバーの存在がガン無視されて、パネルがツールバーの裏側にまで回り込んでしまうのです!当然パネルの上端はツールバーによって隠されます。
すごい地味な嫌がらせですよこれは。
仕方がないので Dock で設定せずに Ancher だけでそれっぽいことをやっていたのですが、やっぱり気持ち悪いです。
というわけで調べてみたところ、パネルとツールバーの優先順位を入れ替えればよいという、ただそれだけのことでした。

Docking with ToolStrip and Panel
http://stackoverflow.com/questions/17069256/docking-with-toolstrip-and-panel

[表示]→[その他のウィンドウ]→[ドキュメントアウトライン] と辿っていくと、GUIコントロールのツリー構造を編集できるウィンドウが表示されます。
ここを見ると、ツールバーのほうがパネルよりも上に位置していると思うので、これをドラッグしてツールバーのほうが下側に来るようにします。
この状態で Dock を設定すると、みごとに問題解決します。
posted by JUNOSOFT at 00:43| Comment(0) | プログラミング
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。