我目前正在使用.NET Framework 4.7在c#中开发一个应用程序 我有DPI缩放问题。在我的电脑上,我有两台显示器,一台150%缩放,另一台100%。我在我的应用清单文件中添加了此代码:
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" >
<asmv3:application xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" >
<asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
<dpiAware>true</dpiAware>
</asmv3:windowsSettings>
</asmv3:application>
</assembly>
它完美无缺。
我将exe文件及其所有依赖项转移到另一台计算机上,该计算机只有一个屏幕具有100%缩放率且应用程序看起来不应该如此。
我希望你们有一个解决方案,因为这个问题已经两天了,我正在努力...
答案 0 :(得分:2)
好吧,就像我每次发布问题一样,我会在几分钟后找出解决方案。
我从应用程序中删除了清单文件,并为我的应用程序中的每个表单将AutoScaleMode
属性更改为Dpi
而不是Font
。
现在它就像一个魅力。