共用方式為


根據 AutoScaleMode 調整表單大小

PerMonitorV2 模式應用程式中,Windows Forms 已使用線性大小 (也稱為 Windows 針對最上層視窗提供的 DPI 縮放大小),不論 AutoScaleMode 為何。 使用 AutoScaleMode.Font 縮放模式時,此實作有問題,其中 Form 縮放應該是非線性。 子控制項會以非線性方式縮放,並取決於指派給 Form 或子控制項的字型。

這項變更會啟用處理最上層 Form 物件的 WM_GETDPISCALEDSIZE 訊息。 它會利用 WM_GETDPISCALEDSIZE 讓 Windows 知道 Form 可能需要視 AutoScaleMode 而定的非線性大小。

導入的版本

.NET 8 Preview 1

先前的行為

先前在 PerMonitorV2-mode 應用程式中,最上層視窗是由 Windows 調整,並忽略 WinForms 應用程式中指定的 AutoScaleMode。 此實作會導致 Form 物件與其子控制項之間的調整不一致。

新的行為

PerMonitorV2-mode 應用程式中,最上層視窗 (例如 Forms) 會根據 AutoScaleMode 進行調整。 此實作可確保最上層視窗會一致調整其子控制項。

變更類別

此變更為行為變更

變更原因

已進行這項變更,以改善 PerMonitorV2 模式中 Windows Forms 應用程式的高 DPI 體驗。

您不需要執行任何動作。

受影響的 API

N/A

另請參閱