【问题标题】:How to proper auto scale ToolStrip in .NET如何在 .NET 中正确自动缩放 ToolStrip
【发布时间】:2017-03-16 15:18:56
【问题描述】:

我正在努力解决以下问题,我想知道是否有人可以提供帮助。

我正在构建一个面向 .NET 4.6 的 .NET C# WinForm 应用程序,它应该具有改进的高 DPI 支持。我正在笔记本电脑上开发该应用程序,该应用程序具有 4K 屏幕并在 Windows 10 中设置为 200%。

我的应用调用 SetHighDPIAware 并在 app.config 中

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

设置。 问题是:当我添加工具条时,它在我的 PC 上正确显示,但在我的客户 PC 上尺寸增加了一倍(仅图像)。结果非常难看。 ToolStrip 和 ToolStrip 项的所有属性都设置为默认值:autosize = true, imagescaling size = 32; 32、imagescalingmode = sizetofit.

非常感谢任何可以提供帮助的人!

【问题讨论】:

  • 您无能为力(除非您自己完全绘制控件)。 Microsoft 可能已在 .NET Framework 4.6.2(或未来版本,例如 4.6.3)中解决了这个问题,因此您可以先检查一下。

标签: c# .net scaling highdpi


【解决方案1】:

更新到 Windows 10 v1703 (Creators Update) 并将您的应用程序定位到 Visual Studio 2017 中的 .Net framework 4.7 以在 WinForms 中使用 better DPI scaling support

试试这是否能给你带来改善。

【讨论】:

  • 谢谢,我会尽力让你知道的。
  • 好的,执行此操作并报告。这里还有additional information about HighDPI in Winforms
  • 对不起。没有改进。甚至尝试在 vs 2017 上创建一个空白项目,针对 fw 4.7,对 app.manifest 和 app.config 进行所有调整,在 win 10 创建者更新上运行,但没有任何改进,即使使用带有 1 个按钮的最简单的工具条。跨度>
  • 这是有线的。文档mentions ToolStrip。在 app.config 中将 Toolstrip.DisableHighDpiImprovements 设置为 false。还将Win10的supportedOS guid添加到清单
  • 实际上,即使来自 dotnet-samples 的 HiDPI 样本也无法缩放工具条添加到那里:(
猜你喜欢
  • 2020-06-04
  • 1970-01-01
  • 2010-11-11
  • 1970-01-01
  • 2012-06-27
  • 2020-01-21
  • 2021-09-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多