【问题标题】:WPF application window not scaled on second monitorWPF 应用程序窗口未在第二个监视器上缩放
【发布时间】: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?

标签: c# wpf windows


【解决方案1】:

似乎是 Windows/Sur​​face 错误。每次我从待机状态恢复 Surface Pro 4(已安装所有更新)时,许多应用程序在移动到另一台显示器时都不会重新缩放。注销登录后又可以正常使用了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多