Form im zweitem Monitor starten...

  • WPF

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von dive26.

    eine (ich finde sehr schaurige) Möglichkeit ist, die WinForms-Bibliotheken einzubinden, und die System.Windows.Forms.Screen-Klasse zu verwenden.

    Auf meinem Stand (2010) bietet Wpf nur eigenartige "VirtualScreen"-Informationen, mit denen man bei mehreren Monitoren Position und PrimaryScreen nicht eindeutig identifizieren kann.
    Oder halt googeln - ich kann mir eiglich auch kaum vorstellen, dass annere Wpf-Progger sich damit zufriedengeben, und vlt. hat ja einer seine Lösung veröffentlicht.
    Ich stand vor dem gleichen Problem.
    Nach langer Nachforschung bin ich zu meinem bedauern auch nur auf .screen gestoßen.

    Falls du was anderes findest wäre ich auch daran interessiert.
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    Hallo Leute,
    ich habe die letzten Tage auch ein Ferndisplay/Küchendisplay geschrieben. Dies kann an jedem angeschlossenen Bildschirm ausgegeben werden. Etwas anderes als die Screen-Auflistung habe ich aber auch nicht verwendet und es funktioniert trotzdem ;) .
    Ich öffne das Fenster immer maximiert.

    VB.NET-Quellcode

    1. ''' <summary>
    2. ''' Öffnet das Fenster am Bildschirm 0,1,2,3, ..... im Vollbildmodus (Maximiert)
    3. ''' Der Wert (welcher Bildschirm befindet sich in der Variable My.Settings.FerndisplayBildschirmNummer
    4. ''' </summary>
    5. ''' <remarks></remarks>
    6. Public Sub ZeigeAufBildschirm()
    7. If My.Settings.FerndisplayBildschirmNummer < 0 Then Exit Sub
    8. Dim screen As Screen
    9. Dim ScreenCount As Integer
    10. ScreenCount = screen.AllScreens.Count
    11. If My.Settings.FerndisplayBildschirmNummer > ScreenCount - 1 Then Exit Sub
    12. screen = screen.AllScreens(My.Settings.FerndisplayBildschirmNummer)
    13. Me.StartPosition = FormStartPosition.Manual
    14. Me.Location = New Point(screen.Bounds.X + 20, screen.Bounds.Y + 20)
    15. Me.WindowState = FormWindowState.Maximized
    16. End Sub


    Ja, Ja - ich weis. Meine Programmierung ist wohl etwas "Bauerntrampelmäßig", aber solange es funktioniert passt es für mich.

    LG Roland
    Bilder
    • Ferndisplay.jpg

      185,56 kB, 709×427, 504 mal angesehen
    Liebe Grüße
    Roland Berghöfer

    Meine aktuellen und kostenlos verwendbaren Tools (mit VB.NET erstellt): freeremarkabletools.com | priconman.com | SimpleCalendar | AudibleTouch | BOComponent.com | bonit.at