public static WpfScreen GetScreenFrom(Window window) { var windowInteropHelper = new WindowInteropHelper(window); Screen screen = Screen.FromHandle(windowInteropHelper.Handle); WpfScreen wpfScreen = new WpfScreen(screen); return wpfScreen; }
public static WpfScreen GetScreenFrom(Window window) { var windowInteropHelper = new WindowInteropHelper(window); Screen screen = Screen.FromHandle(windowInteropHelper.Handle); WpfScreen wpfScreen = new WpfScreen(screen); return(wpfScreen); }
public static WpfScreen GetScreenFrom(Point point) { int x = (int)Math.Round(point.X); int y = (int)Math.Round(point.Y); // are x,y device-independent-pixels ?? System.Drawing.Point drawingPoint = new System.Drawing.Point(x, y); Screen screen = Screen.FromPoint(drawingPoint); WpfScreen wpfScreen = new WpfScreen(screen); return(wpfScreen); }
public static WpfScreen GetScreenFrom(Point point) { int x = (int)Math.Round(point.X); int y = (int)Math.Round(point.Y); // are x,y device-independent-pixels ?? System.Drawing.Point drawingPoint = new System.Drawing.Point(x, y); Screen screen = Screen.FromPoint(drawingPoint); WpfScreen wpfScreen = new WpfScreen(screen); return wpfScreen; }
private void OpenWindow(WindowPositionSide side, WpfScreen screen) { if (side == WindowPositionSide.None || side == WindowPositionSide.Top) return; CloseWindow(); double dockwindowLeft; switch (side) { case WindowPositionSide.Left: dockwindowLeft = WpfScreen.MostLeftX; break; case WindowPositionSide.Right: dockwindowLeft = WpfScreen.MostRightX - 300; break; case WindowPositionSide.Top: return; default: throw new ArgumentOutOfRangeException(nameof(side)); } _placeholderWindow = new DockPlaceholderWindow(screen.WorkingArea.Top, dockwindowLeft, screen.WorkingArea.Height, 300); _placeholderWindow.Show(); }
private void OpenWindow(WindowPositionSide side, WpfScreen screen) { if (side == WindowPositionSide.None) return; CloseWindowIfExists(); double dockwindowLeft, dockwindowWidth; switch (side) { case WindowPositionSide.Left: dockwindowLeft = WpfScreen.MostLeftX; dockwindowWidth = 300; break; case WindowPositionSide.Right: dockwindowLeft = WpfScreen.MostRightX - 300; dockwindowWidth = 300; break; case WindowPositionSide.Top: return; default: throw new ArgumentOutOfRangeException("side"); } _window = new DockRangeWindow(screen.WorkingArea.Top, dockwindowLeft, screen.WorkingArea.Height, dockwindowWidth); _window.Show(); }