【发布时间】:2014-08-26 12:12:21
【问题描述】:
我有一个 WPF 应用程序,想要输出我所拥有的监视器的边界和工作区域。代码如下:
foreach (var screen in Screen.AllScreens.ToList().OrderByDescending(s => s.Primary)) // Primary Screen comes first
{
Console.WriteLine("Device: " + screen.DeviceName);
Console.WriteLine("Bounds : " + screen.Bounds);
Console.WriteLine("Working Area: " + screen.WorkingArea);
}
DISPLAY1 是我的主屏幕,DISPLAY2 是我的辅助屏幕。两者具有相同的分辨率:1920 x 1080。
奇怪的是这段代码给出了以下输出:
设备:\.\DISPLAY1 边界:{X=0,Y=0,Width=1920,Height=1080} 工作区域:{X=0,Y=0,Width=1920,Height=1046}
设备:\.\DISPLAY2 边界:{X=2400,Y=0,Width=2400,Height=1350} 工作区域:{X=2400,Y=0,Width=2400,Height=1308}
我还通过http://wpftutorial.net/ScreenResolutions.html 提供的 Monitor 类更改了 Screen.AllScreens 的使用,但这仍然返回相同的值。有人遇到过这个问题吗?
谢谢
约瑟夫
【问题讨论】: