【发布时间】:2016-09-17 11:10:47
【问题描述】:
我的 WPF 应用程序窗口在运行 Windows 10.1607 的第二台显示器上没有缩放。内置显示器以 200%(高 DPI)运行,外接显示器以 100% 缩放。大多数其他程序窗口在监视器之间移动时会改变它们的大小和内部缩放,但我的没有。它在外接显示器上显得很大,与正确缩放相比,图标和文本大小增加了一倍。
应用程序面向 .NET Framework 4.0,app.manifest 文件包含 Windows 10 支持和 dpiAwareness 的相关条目。即使我删除了这些条目,它也不会改变。不知道以前有没有用过,没找到旧版的。
我需要做什么才能让 Windows 在不同 DPI 显示器上像任何其他窗口一样缩放我的窗口?我目前不认为它会很清晰(.NET 4.6.2 有消息),模糊的重新缩放是可以的。但它只需要做任何事情,而不是在 100% 的监视器上以 200% 的速度渲染窗口。
【问题讨论】:
-
你试过翻转显示器吗?当您将另一台显示器设为主显示器时,它是否也显示为一半大小?
-
当我使用
StackPanel而不是Grid时,我遇到了与您类似的问题。但这可能是一个完全不同的故事。 -
嗯,不管发生了什么,显示器翻转和必要的注销和登录都解决了这个问题。当我将它移动到另一台显示器时,我的窗口现在可以适当地缩放。在选择外接显示器作为主显示器后它已经这样做了,现在我已经把它切换回来了。也许应该更频繁地重启 Windows 10?