5

i need to show dialog in screen by its identification number, for example i have this situation screen setup on windows

I want to show something on fourth, when i get all screens by using Screen.AllScreens, my fourth screen is 0 element in array, because AllScreens returns screens not by indent number but by squence. So mayby someone knows the way how to get identification number from Screen class, or how to get screen coordinates and bounds by its identification number.

UPDATE:

DeviceName is not always corrspont to identification number (see image below):

enter image description here

4

2 に答える 2

1

を見ると、、などが表示されscreen.DeviceNameます。これを使用して、を検索できます。\\\\.\\DISPLAY1\\\\.\\DISPLAY2\\\\.\\DISPLAY4

于 2012-09-14T15:55:58.287 に答える
0

画面番号を取得するには (汚い方法ですが、機能します):

 var sceenId = -1;
 var targetScreen = Screen.FromPoint(Cursor.Position);
 for (var i = 0; i < Screen.AllScreens.Length; i++)
 {
     if (!Equals(targetScreen, Screen.AllScreens[i]))
         continue;
     sceenId = i;
     break;
 }

識別番号で画面座標と境界を取得するには:

Screen.AllScreens[sceenId].Bounds

于 2016-05-19T07:07:50.703 に答える