小さな画面の非常に小さなデバイスに表示されるWPFがありますが、オペレーティングシステムの解像度は高くなっています。解像度は変更できないため(ハードウェアの制限)、WPFアプリを「拡大」して、小さなデバイスで使用できるようにする必要があります。
私の考えは、クロムの「ズームイン/ズームアウト」機能のようなことをすることでした(まあ、他のブラウザも)。たとえば、jquery mobileにアクセスして、 ctrl+を押します。WPFアプリにも同様の効果が必要です。
私は次のようなことを考えていました...
ZoomFactor = 2
WPFApp.RenderSize.Width = WPFApp.Size.Width / ZoomFactor
WPFApp.RenderSize.Height = WPFApp.Size.Height / ZoomFactor
これにより、「理論的には」WPFは大画面用にレンダリングされていると見なされますが、アプリケーションには実際には2倍の領域(ZoomFactor)があります。
次に、ScaleTransformがレンダリングされたコンテンツをズームして、アプリケーション全体を埋めることを考えていました。
WFPApp.RenderedContent.ScaleTransformX = ZoomFactor
WPFApp.RenderedContent.ScaleTransformY = ZoomFactor
これにより、アプリケーションのサイズを変更しても、ZoomFactorがコンテンツに適用されます。
私はWPFに比較的慣れていないので、箱から出してこれを行う方法があるかもしれませんが、そうでない場合、どうすればこれを達成できますか?