如何在 WPF 的第二个屏幕中启动第二个应用程序?
how to launch a second application in a second screen in WPF?
我实际上在为轨道开发两个小的 wpf 应用程序,一个在主计算机上,你可以在上面写飞行员的时间,第二个必须在大屏幕上显示连接到主计算机上的 hdmi 并且只是向飞行员显示时间。
我曾经让一切都很好。
但是当我启动第一个应用程序时,我希望第二个应用程序在第二个屏幕上自动启动。我只找到 Forms 包的解决方案,例如:
System.Windows.Forms.Screen.AllScreens
但是我使用 WPF,所以我无法访问 System.Windows.Forms。
有人知道可能的解决方案吗?
非常感谢!
即使它是一个 WPF 应用程序,您仍然可以参考 System.Windows.Forms。
只需右键单击解决方案资源管理器中的项目,添加引用,然后 select System.Windows.Forms.
然后使用类似这样的东西:(您还需要参考 System.Drawing)
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
this.MaximizeToSecondaryMonitor();
}
public void MaximizeToSecondaryMonitor()
{
var secondaryScreen = Screen.AllScreens.Where(s => !s.Primary).FirstOrDefault();
if (secondaryScreen != null)
{
var workingArea = secondaryScreen.WorkingArea;
this.Left = workingArea.Left;
this.Top = workingArea.Top;
this.Width = workingArea.Width;
this.Height = workingArea.Height;
if (this.IsLoaded)
{
this.WindowState = WindowState.Maximized;
}
}
}
}
code taken from here
我实际上在为轨道开发两个小的 wpf 应用程序,一个在主计算机上,你可以在上面写飞行员的时间,第二个必须在大屏幕上显示连接到主计算机上的 hdmi 并且只是向飞行员显示时间。
我曾经让一切都很好。
但是当我启动第一个应用程序时,我希望第二个应用程序在第二个屏幕上自动启动。我只找到 Forms 包的解决方案,例如:
System.Windows.Forms.Screen.AllScreens
但是我使用 WPF,所以我无法访问 System.Windows.Forms。
有人知道可能的解决方案吗? 非常感谢!
即使它是一个 WPF 应用程序,您仍然可以参考 System.Windows.Forms。 只需右键单击解决方案资源管理器中的项目,添加引用,然后 select System.Windows.Forms.
然后使用类似这样的东西:(您还需要参考 System.Drawing)
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
this.MaximizeToSecondaryMonitor();
}
public void MaximizeToSecondaryMonitor()
{
var secondaryScreen = Screen.AllScreens.Where(s => !s.Primary).FirstOrDefault();
if (secondaryScreen != null)
{
var workingArea = secondaryScreen.WorkingArea;
this.Left = workingArea.Left;
this.Top = workingArea.Top;
this.Width = workingArea.Width;
this.Height = workingArea.Height;
if (this.IsLoaded)
{
this.WindowState = WindowState.Maximized;
}
}
}
}
code taken from here