public void Docking(FloatingWindow floatingWindow, Point point) { if (CurrentDockPane != null) { OverlayWindow overlay = CurrentDockPane.OverlayWindow; DockPane dockPane = floatingWindow.MainDockPane; dockPane.RemoveSelf(); GridSplitter splitter = new GridSplitter(); splitter.Background = Brushes.Gray; if (dockPane != null) { if (overlay.LeftDock.Contains(point)) { CurrentDockPane.Docking(dockPane, EDock.Left); } else if (overlay.RightDock.Contains(point)) { CurrentDockPane.Docking(dockPane, EDock.Right); } else if (overlay.TopDock.Contains(point)) { CurrentDockPane.Docking(dockPane, EDock.Top); } else if (overlay.BottomDock.Contains(point)) { CurrentDockPane.Docking(dockPane, EDock.Bottom); } else if (overlay.CenterDock.Contains(point)) { CurrentDockPane.Docking(dockPane, EDock.Center); } floatingWindow.Close(); } } }
private void OnUnloaded(object sender, RoutedEventArgs e) { OverlayWindow.Close(); DockManager.Instance.UnregistDockPane(this); }
private void OnLoaded(object sender, RoutedEventArgs e) { OverlayWindow = new OverlayWindow(); DockManager.Instance.RegistDockPane(this); }