【发布时间】:2008-10-14 22:40:21
【问题描述】:
我正在开发一个显示多个图表的 .NET 应用程序。我的用户想要一种简单的方式来表达“获取图表 #3 并在我的第四台显示器上将其最大化”。
如何确定监视器的数量,以便为它们选择“监视器 #1、监视器 #2 等”? (不是每个用户都有相同数量的监视器。)
一旦用户选择了特定的监视器,我如何使用该信息来定位他们试图最大化的图表?
【问题讨论】:
我正在开发一个显示多个图表的 .NET 应用程序。我的用户想要一种简单的方式来表达“获取图表 #3 并在我的第四台显示器上将其最大化”。
如何确定监视器的数量,以便为它们选择“监视器 #1、监视器 #2 等”? (不是每个用户都有相同数量的监视器。)
一旦用户选择了特定的监视器,我如何使用该信息来定位他们试图最大化的图表?
【问题讨论】:
Screen 类通过查找available screens 对您有很大帮助。
当您“最大化”表单时,表单将自动最大化到表单所在的屏幕大小。
您可以自己定位它,或者让 Windows 来处理它,只需将表单放在右侧的“屏幕”上,然后将其最大化。或者使用屏幕的WorkingArea,然后自己填写。
【讨论】:
试试 System.Windows.Forms 中的Screen 类。 AllScreens 静态成员包含连接到系统的所有屏幕的列表。选择屏幕后,您可以使用Bounds 成员来决定如何将窗口最大化到该屏幕。
【讨论】:
使用 SystemInformation.MonitorCount 和此类中的其他方法。
【讨论】: