Bestimmen der Abmessungen des aktiven Bildschirms in WPF
In WPF-Anwendungen erfordert das Ermitteln der Abmessungen des aktiven Bildschirms einen etwas anderen Ansatz als in WinForms. Diese Frage befasst sich mit der Notwendigkeit eines WPF-Äquivalents von System.Windows.SystemParameters.WorkArea, um den verfügbaren Arbeitsbereich auf dem aktuellen Monitor zu ermitteln.
Lösung:
Anstatt sich zu verlassen Für eine integrierte Funktion können Sie die Screen.FromControl-Methode verwenden, wie in der Antwort vorgeschlagen. Diese Methode verwendet ein Control-Objekt als Argument und gibt das Screen-Objekt zurück, das den Monitor darstellt, der dieses Steuerelement enthält. Um dies in WPF anzuwenden, können Sie eine Erweiterungsmethode wie die in der Antwort bereitgestellte erstellen.
Erweiterungsmethode:
static class ExtensionsForWPF { public static System.Windows.Forms.Screen GetScreen(this Window window) { return System.Windows.Forms.Screen.FromHandle(new WindowInteropHelper(window).Handle); } }
Durch Aufrufen dieser Erweiterungsmethode Wenn Sie ein WPF-Window-Objekt verwenden, können Sie das entsprechende System.Windows.Forms.Screen-Objekt abrufen, mit dem Sie auf die Bounds-Eigenschaft zugreifen und die Abmessungen des aktiven Objekts abrufen können Bildschirm.
Verwendung:
Window myWindow = ...; System.Windows.Forms.Screen activeScreen = myWindow.GetScreen(); Rectangle activeScreenBounds = activeScreen.Bounds;
Dieser Ansatz bietet eine plattformübergreifende Lösung zur Bestimmung des verfügbaren Arbeitsbereichs auf dem Monitor, der das WPF-Fenster hostet.
Das obige ist der detaillierte Inhalt vonWie ermittelt man die Abmessungen des aktiven Bildschirms in WPF-Anwendungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!