次の方法で共有


フォームが AutoScaleMode に従ってスケーリングされる

PerMonitorV2 モードのアプリについて、Windows フォームでは AutoScaleMode に関係なく、Windows によって提供される線形サイズ (DPI スケール サイズとも呼ばれます) が最上位ウィンドウに使用されてきました。 この実装は、AutoScaleMode.Font スケーリング モードを使用する場合に問題となりました。そこでは Form スケーリングが非線形である必要があります。 子コントロールは非線形的にスケーリングされ、Form または子コントロールに割り当てられたフォントに依存します。

この変更により、最上位レベルの Form オブジェクトに対する WM_GETDPISCALEDSIZE メッセージ処理が有効になります。 WM_GETDPISCALEDSIZE を使用して、AutoScaleMode によっては Form に非線形サイズが必要な場合があることを Windows に知らせます。

導入されたバージョン

.NET 8 Preview 1

以前の動作

以前は、PerMonitorV2 モードのアプリでは、最上位ウィンドウは Windows によってスケーリングされ、WinForms アプリケーションで指定されているように AutoScaleMode が無視されました。 この実装により、Form オブジェクトとその子コントロールの間で一貫性のないスケーリングが生じました。

新しい動作

PerMonitorV2 モードのアプリでは、最上位ウィンドウ (Forms など) は AutoScaleMode に従ってスケーリングされます。 この実装により、最上位ウィンドウが子コントロールと一貫してスケーリングされるようになります。

カテゴリの変更

この変更は、動作変更です。

変更理由

この変更は、PerMonitorV2 モードの Windows フォーム アプリの高 DPI エクスペリエンスを改善するために行われました。

必要な操作はありません。

影響を受ける API

N/A

関連項目