как запустить второе приложение на втором экране в WPF?

На самом деле я работаю над двумя небольшими приложениями wpf для трека, одно находится на основном компьютере, вы можете записать время включения пилота, второе должно отображаться на большом экране, подключиться к основному компьютеру через hdmi и просто отображать время на пилот.

Я когда-либо делал все, и все работало нормально.

Но когда я запускаю первое приложение, я хочу, чтобы второе приложение запускалось автоматически на втором экране. Я нахожу решение только с такими пакетами форм, как:

System.Windows.Forms.Screen.AllScreens

Но я работаю с WPF, поэтому не могу получить доступ к System.Windows.Forms.

Кто-нибудь как идея возможного решения? Большое спасибо!


person nicar    schedule 09.03.2015    source источник
comment
this.Location = Screen.AllScreens[1].WorkingArea.Location; пробовали ли вы это использовать? 1 - второй монитор, а 0 - первый.   -  person Tim van Gool    schedule 09.03.2015


Ответы (1)


Несмотря на то, что это приложение WPF, вы все равно можете ссылаться на System.Windows.Forms. Просто щелкните правой кнопкой мыши проект в обозревателе решений, добавьте ссылки и выберите 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;
            }
        }
    }
}

код взят отсюда

person Toby Crawford    schedule 09.03.2015
comment
Лучше работает при запуске из OnLoaded. - person a''; 01.04.2017