Tipp der Woche 24.03.2022, 09:08 Uhr

WPF/VB: Fenster auf dem richtigen Monitor starten

Das Notebook steht links, der große Monitor rechts daneben. Die Anwendung soll auf dem großen Monitor starten – außer wenn der Anwender unterwegs arbeitet und kein zweiter Monitor angeschlossen ist.
(Quelle: Microsoft.com)
Dass viele Anwendungen mit dem Einsatz eines zweiten (oder dritten) Monitors nicht klarkommen, ist lästig. Auch die Automatik von Windows ist nicht immer hilfreich. So habe ich zum Beispiel eine TV-App auf dem Rechner, die regelmäßig auf dem rechten Monitor startet. Ist dieser allerdings nicht angeschlossen ... startet sie trotzdem rechts, da kann man sie allerdings nicht sehen und muss sie umständlich nach links holen.
Für einen Start auf dem richtigen Bildschirm hilft der nachfolgende Code, der die Gesamt-Auflösung der Bildschirme ermittelt und daraufhin die linke obere Ecke des Fensters bestimmt. Angenommen wird dabei, dass das Notebook eine Full-HD-Auflösung (1920 x 1080 Pixel) hat.
' Visual Basic .NET
Private Sub MainWindow_Loaded(...) Handles Me.Loaded
...
  Me.Top = 150
  If SystemParameters.VirtualScreenWidth > 2000 Then
    Me.Left = 2250
  Else
    Me.Left = 250
  End If
...
End Sub
Welche weiteren Informationen die Klasse SystemParameters (Namespace:
System.Windows) noch für Sie bereitstellen kann, erfahren Sie hier.


Das könnte Sie auch interessieren