我的 WPF 应用程序开箱即用,可识别每个显示器的 dpi。我没想到?
My WPF app is per-monitor dpi-aware out of the box. I was not expecting that?
我对 WPF 中的每个监视器 dpi 感知感到有点困惑。我认为您需要做一些工作才能使 windows 在不同的显示器上正确缩放(如 Developing a Per-Monitor DPI-Aware WPF Application 中所述)。
但我只是 运行 我的应用程序在 PC 上有两个显示器(2560x1440 和 2160x1440),当我在显示器之间移动对话时,对话会自动缩放。这是最新的快速环 Windows 10. 我错过了什么吗?
继续评论中的对话。
是的,这与 Windows 8.1.
相同
这是来自您链接的 post
的注释
Windows Presentation Foundation (WPF) applications are by default system DPI-aware.
HTH
您看到的是当一个应用 window 移动到具有不同 DPI 的不同显示器时系统缩放的示例。这是因为 WPF 应用程序默认是系统 DPI 感知的。因此,如果您仔细观察,您会发现当目标 DPI 较高时 WPF visuals/text 变得模糊,或者当目标 DPI 较低时它们看起来模糊。
另外,请注意监视器分辨率对于 WPF 应用程序并不重要,因为 WPF 与设备分辨率无关(它的测量单位是设备独立像素)。
好消息:.NET 4.6.2 预览版刚刚发布,它具有开箱即用的 Per Monitor DPI Awareness。在此处查看开发人员指南和示例:
https://github.com/Microsoft/WPF-Samples/tree/master/PerMonitorDPI
我对 WPF 中的每个监视器 dpi 感知感到有点困惑。我认为您需要做一些工作才能使 windows 在不同的显示器上正确缩放(如 Developing a Per-Monitor DPI-Aware WPF Application 中所述)。
但我只是 运行 我的应用程序在 PC 上有两个显示器(2560x1440 和 2160x1440),当我在显示器之间移动对话时,对话会自动缩放。这是最新的快速环 Windows 10. 我错过了什么吗?
继续评论中的对话。
是的,这与 Windows 8.1.
相同
这是来自您链接的 post
Windows Presentation Foundation (WPF) applications are by default system DPI-aware.
HTH
您看到的是当一个应用 window 移动到具有不同 DPI 的不同显示器时系统缩放的示例。这是因为 WPF 应用程序默认是系统 DPI 感知的。因此,如果您仔细观察,您会发现当目标 DPI 较高时 WPF visuals/text 变得模糊,或者当目标 DPI 较低时它们看起来模糊。 另外,请注意监视器分辨率对于 WPF 应用程序并不重要,因为 WPF 与设备分辨率无关(它的测量单位是设备独立像素)。
好消息:.NET 4.6.2 预览版刚刚发布,它具有开箱即用的 Per Monitor DPI Awareness。在此处查看开发人员指南和示例:
https://github.com/Microsoft/WPF-Samples/tree/master/PerMonitorDPI