使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

症状

实现自己的缩放逻辑高 DPI 设置的 Windows 窗体应用程序可能会遇到异常时这些应用程序通过使用下面的.config 文件设置选择到 Microsoft.NET Framework 4.5.2 高 DPI 更改进行缩放︰

<appSettings>
<add key="EnableWindowsFormsHighDpiAutoResizing" value="true" />

</appSettings>


解决方案

应用比例因子缩放值之上的应用程序可能会遇到额外缩放时他们会选择到.NET Framework 4.5.2 高 DPI 改进。若要解决此问题,请更新应用程序的应用在ToolStrip.ImageScalingSize默认值缩放缩放逻辑。此更改将避免引入额外的缩放比例。

例如,应用程序有以下代码将两次缩放工具条按钮︰

public MyToolStrip()
{

IntPtr hDC = GetDC(new HandleRef(null, IntPtr.Zero));

double xFactor = GetDeviceCaps(new HandleRef(null, hDC), LOGPIXELSX) / 96.0;

double yFactor = GetDeviceCaps(new HandleRef(null, hDC), LOGPIXELSY) / 96.0;

this.ImageScalingSize = new Size((int)(this.ImageScalingSize.Width * xFactor), (int)(this.ImageScalingSize.Height * yFactor));

InitializeComponent();

}


下面的代码可用于扩展从常量默认大小,或您所需的图像的大小︰

this.ImageScalingSize = new Size((int)(16 * xFactor), (int)(16 * yFactor));


  

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×