Sử dụng .NET Framework 4.7 và Windows 10 Creators Update (1703) hoặc mới hơn, bạn phải thực hiện những việc sau để định cấu hình hỗ trợ DPI cao cho ứng dụng Windows Form của mình:
Tuyên bố khả năng tương thích với Windows 10.
Để thực hiện việc này, hãy thêm phần sau vào manifest
tệp của bạn :
<compatibility xmlns="urn:schemas-microsoft.com:compatibility.v1">
<application>
<!-- Windows 10 compatibility -->
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}" />
</application>
</compatibility>
Bật nhận thức DPI cho mỗi màn hình trong app.config
tệp.
Windows Forms giới thiệu một System.Windows.Forms.ApplicationConfigurationSection mới phần tử để hỗ trợ các tính năng và tùy chỉnh mới được thêm vào bắt đầu từ .NET Framework 4.7. Để tận dụng các tính năng mới hỗ trợ DPI cao, hãy thêm phần sau vào tệp cấu hình ứng dụng của bạn.
<System.Windows.Forms.ApplicationConfigurationSection>
<add key="DpiAwareness" value="PerMonitorV2" />
</System.Windows.Forms.ApplicationConfigurationSection>
Quan trọng
Trong các phiên bản trước của .NET Framework, bạn đã sử dụng tệp kê khai để thêm hỗ trợ DPI cao. Cách tiếp cận này không còn được khuyến nghị nữa vì nó ghi đè các cài đặt được xác định trên tệp app.config.
Gọi phương thức EnableVisualStyles tĩnh.
Đây phải là lệnh gọi phương thức đầu tiên trong điểm nhập ứng dụng của bạn. Ví dụ:
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
Ưu điểm của điều này là hỗ trợ các kịch bản DPI động trong đó người dùng thay đổi DPI hoặc hệ số tỷ lệ sau khi ứng dụng Windows Forms đã được khởi chạy.
Nguồn: Hỗ trợ DPI cao trong Windows Forms