3

FontStretchプロパティは知っていますが、その使用方法がよくわかりません。

私が望むのは、たとえば 200x400 の解像度で設計されたウィンドウを作成することです。次に、ユーザーがそれを 400x800 (または何でも) に伸ばすと、単に移動するのではなく、ウィンドウ全体を拡大/拡大します (特定のシナリオでは、すべてのサイズが 2 倍になります)。画像でも機能するのであればいいのですが、これを行うにはフォントと一般的なオブジェクトのサイズを取得するだけでよいでしょう.

この機能を提供する組み込み関数またはサードパーティ ライブラリはありますか?

4

2 に答える 2

4

テキスト、コントロール、画像を含むすべてのコンテンツを均等に拡大する必要がある場合は、メイン パネルのサイズを 200x400 に固定し、それをViewboxパネルに含めます。

ユーザーが 300x400 のように比例しない方法でウィンドウのサイズを変更すると、問題が発生することがあります。次に、Viewbox.StretchDirection および Stretch プロパティによっては、レイアウトが歪んだり、空の領域が表示される場合があります。これを解決するには、ウィンドウ サイズを特定の比率に制限します。

于 2009-11-06T10:57:22.603 に答える
1

ここで ColorPicker コントロールの実装を見ることができます: http://livegeometry.codeplex.com/SourceControl/changeset/view/34720#405553 特に MeasureOverride、ArrangeOverride、ComputeScaleFactor。m_Scale は、コントロール全体に適用される ScaleTransform です。

必要に応じて、SizeToContent と LayoutTransform を使用することもできます。

于 2009-11-06T08:58:09.583 に答える