簡體   English   中英

WinForm 的 Windows 高 DPI 縮放

[英]Windows High DPI Scaling for WinForm

這是我遇到很多麻煩的事情。 經過幾天的試驗,我終於想出了如何正確縮放 WinForms。 這也可能對其他人有所幫助。

有很多關於修改 app.manifest 或 app.config 文件的建議。 該解決方案可能適用於早期版本的 Windows,但沒有一個對我有用。 安裝我的應用程序后,圖片和控件搞砸了(在 Visual Studio 中調試一切正常)。 經過一些測試,我發現將“覆蓋高 dpi 縮放”選項設置更改為“應用程序”對我有用。 但我想在應用程序中支持這一點,而不是修改某些 Windows 設置。 在窗口內更改高 dpi

我偶然發現了一份 Windows 支持文檔,解釋說他們已經使用最新版本的 Windows 更改了一些 DPI 縮放比例,而舊方法可能無法正常工作。

您實際要做的就是按照以下步驟操作:

  1. 找到你的 app.config
  2. </startup><userSettings> ,插入以下代碼段
<System.Windows.Forms.ApplicationConfigurationSection>
  <add key="DpiAwareness" value="PerMonitorV2" />
</System.Windows.Forms.ApplicationConfigurationSection>
  1. 保存文件並重新加載您的項目
  2. 確保您已從清單中刪除任何其他調整
  3. 在您的主要方法或入口點中設置它

Application.EnableVisualStyles()

就是這樣! 在機器上安裝后,您的應用程序在 4K 環境中應該看起來很棒。 如需進一步參考,請參閱Microsoft 的這篇文章。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM