从屏幕类获得错误的屏幕分辨率
本文关键字:屏幕 分辨率 错误 | 更新日期: 2023-09-27 18:34:22
我正在为我的日常工作构建一些工具。我尝试使用Screen.PrimaryScreen.Bounds.Height/Width
来获取系统分辨率但是,如果系统设置为"不小"DPI 设置,c# 将回复错误的分辨率例如:当我的 DPI 设置为小时,我可以获得 1920x1080 的实际分辨率。但是分辨率在中等DPI设置下变为1536x864,在大DPI设置下变为1280x720
看起来 c# 只能通过 Screen 类从系统获取虚拟分辨率。
还有其他方法可以获得"真实"显示分辨率吗?我试了SystemInformation
,得到相同的结果
在 WPF 应用程序中,您可以尝试以下任何属性,以找出最适合您的任务的属性:
SystemParameters.PrimaryScreenWidth
SystemParameters.PrimaryScreenHeight
SystemParameters.VirtualScreenWidth
SystemParameters.VirtualScreenHeight
SystemParameters.WorkArea.Width
SystemParameters.WorkArea.Height
希望这会有所帮助。此致敬意