2017-04-26 2 views
0

Ich habe Wartung einer Winforms-Anwendung, die auf .Net Version 4 ausgeführt wird, übernommen. Das Startobjekt ist das Anmeldeformular. Ich habe drei Monitore. Das Anmeldeformular öffnet sich zentriert auf dem Monitor, auf dem sich der Mauszeiger befindet. Ich kann keinen Code in der Form finden, die seine Position bestimmt. Ich habe noch nie ein Formular gesehen. Gibt es eine Einstellung, die dies ermöglicht, oder ist das normales Verhalten?Mehrere Monitore und Position des Startobjekts in Winforms App

Antwort

1

Überprüfen Sie die StartPosition des Formulars - scheint wie es auf FormStartPosition.CenterScreen gesetzt ist.
Von MSDNs Seite auf FormStartPosition Enumeration:

Member name    Description 
CenterParent   The form is centered within the bounds of its parent form. 
CenterScreen   The form is centered on the current display, and has the dimensions specified in the form's size. 
Manual     The position of the form is determined by the Location property. 
WindowsDefaultBounds The form is positioned at the Windows default location and has the bounds determined by Windows default. 
WindowsDefaultLocation The form is positioned at the Windows default location and has the dimensions specified in the form's size. 

Beachten Sie, dass CenterScreen genau das, was beschrieben, die Sie beschrieben.

+0

Danke. Ich habe dies als die Antwort markiert, weil es meine Frage beantwortet, aber ich fand, dass es nicht immer wahr ist. Es gab andere Formen, bei denen die Startposition auf CenterScreen eingestellt war, die sich nicht so verhielten. Diese Formulare würden immer im Hauptfenster geöffnet. Ich fand, dass der Unterschied die ShowInTaskbar Eigenschaft des Formulars war. Auf True setzen und das Formular wird in der aktuellen Anzeige geöffnet, wie in der Dokumentation angegeben. Auf False gesetzt, und das Formular wird immer in der Hauptanzeige geöffnet. Ich hätte Ihre Antwort bearbeitet, um diese Information hinzuzufügen, aber ich habe noch nicht genug Privilegien. –

Verwandte Themen