public void AddTabbedMdiHost(DockSite dockSite) { ParameterNullCheck(dockSite); var mdiHost = new TabbedMdiHost(); dockSite.Workspace.Content = mdiHost; }
///////////////////////////////////////////////////////////////////////////////////////////////////// // NON-PUBLIC PROCEDURES ///////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> /// Creates the <see cref="DockSite"/>. /// </summary> private void CreateDockSite() { // Make sure tabs are programmatically added to the end dockSite.AreNewTabsInsertedBeforeExistingTabs = false; // Add a Workspace dockSite.Child = new Workspace(); // Add a TabbedMdiHost var mdiHost = new TabbedMdiHost(); dockSite.PrimaryDockHost.Workspace.Content = mdiHost; // Add a couple tool windows attached to each other on the right that are 300px wide var toolWindowR1 = this.CreateToolWindow("DockedRight-1"); toolWindowR1.ContainerDockedSize = new Size(300, 200); var toolWindowR2 = this.CreateToolWindow("DockedRight-2"); toolWindowR1.Dock(dockSite, Side.Right); toolWindowR2.Attach(toolWindowR1); // Dock bottom var toolWindowB = this.CreateToolWindow("DockedBottom"); toolWindowB.Dock(dockSite.PrimaryDockHost.Workspace, Side.Bottom); // Auto hide left var toolWindowAH = this.CreateToolWindow("Auto-Hidden"); toolWindowAH.AutoHide(Side.Left); // Floating var toolWindowU = this.CreateToolWindow("Floating"); toolWindowU.ContainerDockedSize = new Size(400, 200); toolWindowU.Float(new Point(400, 300)); // Add three documents var documentWindow1 = this.CreateDocumentWindow("Upper-1"); documentWindow1.Open(); var documentWindow2 = this.CreateDocumentWindow("Upper-2"); documentWindow2.Open(); var documentWindow3 = this.CreateDocumentWindow("Lower"); documentWindow3.Open(); documentWindow3.MoveToNewHorizontalContainer(); // Make sure new tabs are inserted before existing tabs again dockSite.AreNewTabsInsertedBeforeExistingTabs = true; }
public DockWorkspace() { _composer = new WorkspaceComposer <UIElement, SmartPartInfo>(this); Workspace workspace = new Workspace(); workspace.Background = null; TabbedMdiHost host = new TabbedMdiHost(); workspace.Content = host; TabbedMdiContainer container = new TabbedMdiContainer(); host.Content = container; this.Content = workspace; this.WindowClosing += (s, e) => { if (!_isLoading) { WorkspaceCancelEventArgs args = new WorkspaceCancelEventArgs(e.Window.Content); RaiseSmartPartClosing(args); e.Cancel = args.Cancel; } }; this.WindowClosed += (s, e) => { if (!_isLoading) { _isClosing = true; Close(e.Window.Content); _isClosing = false; } }; this.WindowActivated += (s, e) => { Activate(e.Window.Content); }; }