您需要使用
Screen该类来查找原始表单不在的屏幕,然后
Location根据该屏幕的属性设置第二个表单的属性
Bounds。
例如:
var myScreen = Screen.FromControl(originalForm);var otherScreen = Screen.AllScreens.FirstOrDefault(s => !s.Equals(myScreen)) ?? myScreen;otherForm.Left = otherScreen.WorkingArea.Left + 120;otherForm.Top = otherScreen.WorkingArea.Top + 120;
这将适用于任意数量的屏幕。
请注意,可能已对视频卡进行了配置,以使Windows看到一个大屏幕而不是两个较小的屏幕,在这种情况下,这变得更加困难。


![在双监视器方案中,如何确保表单显示在“附加”监视器上?[重复] 在双监视器方案中,如何确保表单显示在“附加”监视器上?[重复]](http://www.mshxw.com/aiimages/31/470694.png)
