我正在使用下面的C#代码来获取UWP中显示器的屏幕尺寸。
var displayInformation = DisplayInformation.GetForCurrentView();
var screenSize = new Size((int)displayInformation.ScreenWidthInRawPixels,
(int)displayInformation.ScreenHeightInRawPixels);
但是问题是它返回了第一个监视器分辨率。我有两个监视器,我需要在运行该应用程序的监视器的屏幕尺寸。不是第一台显示器。如果该应用程序在第二台显示器上运行,则我需要第二台显示器的屏幕尺寸,而不是第一台显示器。我的显示器尺寸不同。
我该如何解决这个难题?
答案 0 :(得分:0)
这实际上应该是您要获得的行为-将应用程序移动到另一个屏幕后,DisplayInformation
属性将开始返回该给定屏幕的值。
我也在本地进行了测试-您甚至不必通过GetForCurrentView
获取新实例-即使您只有一个实例,在应用移动时也会调用ScreenWidthInRawPixels
和类似的属性到第二个屏幕,您将获得正确的值。