我对WPF中每个显示器的dpi感知感到困惑。我认为您需要做一些工作以使您的窗口在不同的显示器上正确缩放(如Developing a Per-Monitor DPI-Aware WPF Application中所述)。
但是我只是在带有两个显示器(2560x1440和2160x1440)的PC上运行了我的应用程序,当我在两个显示器之间移动它时,对话框会自动缩放。那是最新的快速环Windows10。我错过了什么吗?
最佳答案
您看到的是一个应用程序窗口移动到具有不同DPI的另一台显示器时的系统缩放示例。这是因为WPF应用默认为系统DPI感知。结果,如果您仔细注意,您将看到WPF视觉效果/文本在目标DPI较高时变得模糊,或者在目标DPI较低时看起来模糊。
另外,请注意,监视器分辨率对于WPF应用程序并不重要,因为WPF与设备分辨率无关(它的度量单位是与设备无关的像素)。
好消息:.NET 4.6.2预览版刚刚发布,它具有Per Monitor DPI意识。在此处查看开发人员指南和示例:
https://github.com/Microsoft/WPF-Samples/tree/master/PerMonitorDPI
关于wpf - 我的WPF应用程序开箱即可识别每个显示器的dpi。我没想到吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35865238/