WPF-Multimonitor-Problem - WindowState

Ich habe seit einiger Zeit versucht, meine WPF-Anwendung auf mehrere Monitore auszudehnen, und fast funktioniert sie.

Das Problem scheint aufzutreten, wenn ich die folgende Zeile setze:

win1.WindowState = WindowState.Maximized

Dies bewirkt, dass sich die Anwendung nur über den Hauptbildschirm erstreckt.

Mein Code lautet wie folgt:

public partial class App : Application
{
    private void Application_Startup(object sender, StartupEventArgs e)
    {
        Window1 win1 = new Window1();
        win1.WindowStartupLocation = WindowStartupLocation.Manual;
        win1.Width = 2560;
        win1.Height = 1024;
        win1.Left = 0;
        win1.Top = 0;
        win1.Topmost = true;
        win1.Background = new SolidColorBrush(Colors.Black);
        win1.WindowStyle = WindowStyle.None;
        win1.Show();
        win1.Focus();
    }
}

Und innerhalb von Fenster 1:

public partial class Window1 : Window
{
    public Window1()
    {

    }

    private void Window_Loaded(object sender, RoutedEventArgs e)
    {
        WindowState = WindowState.Maximized;
    }
}

Dieses Beispiel funktioniert, aber das Fenster ist nicht maximiert und die Anwendungsränder sind weiterhin sichtbar.

Durch das Einbeziehen der maximierten Verzögerung in Application_Startup wird der Monitor auf den primären Monitor maximiert.

Warum ist das?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage