2017-05-08 18 views
0

まあ、私はいくつかのフォームを含むパネルを持っています。 Panel DockをFillに設定したのは、ウィンドウが最大化されたときに有効になるためです。私はパネルの最小サイズも設定しています。なぜなら、内容/フォームがかなり長いためです。パネルを塗りつぶすように設定しますが、高さはウィンドウフォームでスクロール可能です

悲しいことに、表示されていないスクロールバーでも、AutoScrollをTrueに設定してAutoScrollMinSizeを設定しています。これを正しく設定するには?

ウィンドウの高さのサイズは300pxですが、フォームを含むパネル(ウィンドウ内)の高さは約600pxです。私は常にスクロールバーを表示する必要があります。事前

+0

垂直スクロールバーの場合はTOPに固定して、水平スクロールバーの場合は左に固定してみましたか?それは働いている? –

答えて

0

おかげであなたはMSDN documantationに示したように、パネルの右側にあるすべての子anchordを持っていないことを確認してください:

「を防止し、Windowsフォームでの制限は現在ありall RightToLeftが有効で、AutoScrollがYesに設定されている場合、ScrollableControlから派生したクラスが正しく動作しません。たとえば、 Panelなどのコントロールを配置するとします。または、Panelからコンテナクラス (FlowLayoutPanelまたはTableLayoutPanel) - あなたのフォーム。コンテナのAutoScrollをYesに設定し、 コンテナ内の1つまたは複数のコントロールのAnchorプロパティをRightに設定すると、スクロールバーが表示されなくなります。 ScrollableControlの クラスは、AutoScrollがNoに設定されているかのように動作します。 現在のところ、唯一の回避策は、別のScrollableControl 内のScrollableControlをネストすることです。あなたはこのような状況で動作するようにTableLayoutPanel 必要がある場合たとえば、あなたはPanelコントロール の内側に配置することができますし、はいをパネルに自動スクロールを設定します。」

0

おかげで、すべて、私は最終的に間違っているものを考え出しました。私はそれが自動的にAutoScrollMinSize代わりのminimumSizeまたはdefauに従うパネルを強制するパネルのパネルの

プロパティ

Dock: Fill 
AutoScroll: true 
AutoScrollMinSize: 600px (Height) 

をのminimumSizeを設定する必要はありません。サイズ。

関連する問題