2011-03-07 67 views
7

無論硬件配置如何,是否從.NET的Screen.AllScreens返回所有顯示?例如,在單個PC上可以有:.NET中的多個監視器

  1. 視頻卡出兩個顯示=總2個顯示
  2. 視頻卡的每個縮小到1個顯示=總2個顯示,
  3. 視頻卡的每個出2個顯示= 6級的顯示器,
  4. 寬域卡出來6個顯示器(上DisplayPort的)

在所有這些情況下,如果我使用Screen.AllScreens可以予單獨訪問每個顯示?

另外,如果我在擴展模式下有一張卡,這意味着2個顯示器插入一張卡,但它只是一個大的桌面(我在工作中使用)?我還可以指定內容在一個屏幕上顯示嗎?

回答

7

是的,Windows並不關心屏幕如何分佈在視頻適配器上。它只是爲每個屏幕提供自己的座標,具體取決於您如何在Display applet中安排它們。通過將窗口的位置和大小設置爲適合Screen.Bounds

1

擴展桌面不影響屏幕數量。

假設每個屏幕有1個屏幕應該是安全的。雖然有些硬件可能會報告錯誤的顯示數量,但這種情況非常罕見。在這種情況下,您會注意到在控制面板中您仍然有不正確的計數。

1

AllScreens屬性將列出Windows在控制面板中顯示的相同顯示器。例如,如果您將Eyefinity設置爲單個大表面(SLS),它將在列表中顯示爲單個條目;如果您將它設置爲6個獨立監視器,則列表中將有6個條目。