-3

基本的に、スクロールバーが表示される前にウィンドウサイズを自動的に最小サイズに設定しようとしています。論理的には、ウィンドウのサイズをこのサイズに設定し、すべてのコンポーネントが問題なく表示されるはずだと考えています。他の質問に答える回答のうち、それが機能しなかった場合、最小サイズは0です。

アプリケーションを起動すると、完全なコンテンツが表示されません。radformでtelerikレポートビューア(誰かがそれが何であるかを知っている場合)を使用していますが、名前は気にしないでください。レポートビューアとradformは単なる拡張機能です。既知のwinformとコンポーネントの場合、同じルールが適用されます。

ウィンドウを表示すると、コンポーネント全体が表示されません。ほとんどの場合、ウィンドウのサイズを変更して削除する必要がある水平スクロールバーです。

フォームとコンポーネントの両方でautoscrollminizeプロパティを出力しようとしましたが、どちらも0,0ですが、ウィンドウのサイズを手動で変更したときにスクロールバーが表示されたり消えたりする場合は、からウィンドウサイズを設定するために使用できるプロパティ/値があるはずです。始める。

技術情報: reportviewerコンポーネントをドッキング解除すると、コンポーネントはすでにドッキングされているため、このコンポーネント内にスクロールバーが表示されるため、このコンポーネントのデータに応じて垂直スクロールバーがいつ表示されるかを把握することが重要です。

私はすでにウィンドウのautosizeプロパティをtrueに設定し、サイズを10,10に設定して最小サイズ/ AutoScrollMinSizeを見つけようとしました。サイズを優先サイズに設定します(これを行うと、ウィンドウはタイトルバーのみを表示する可能な限り最小のサイズになります。)

4

1 に答える 1

2

フォームの最小サイズは、あなたがフォームに設定した最小サイズであり、あなたのために計算された最小値ではありません。

コントロールに必要なスペースを計算/見つける必要があり、フォームの高さ/幅に設定する値があります。コントロールに必要なスペースを計算するには、あなた次第です:行数に行の高さ + ヘッダー/フッターの高さを掛けたものでしょうか? またはそのようなもの。

いくつかの異なる調査を行うこともできます。スクロールバーがある場合、必要な値がすでにどこかにある場合は、それを見つけるだけで済みます。この種の調査を行うために、非常に便利な小さな無料ツールがあります

Hawkeye - .Net ランタイム オブジェクト エディター - http://hawkeye.codeplex.com/

これはプロパティ グリッドのように機能しますが、実行中の .net プログラムにフックすることができ、すべて (プロパティ値、プライベート フィールド値、オブジェクト参照など) が表示されるので、スクロールバー オブジェクトを掘り下げて、高さ/幅の値を見つけることができます。

于 2012-09-07T12:41:13.213 に答える