private static void CloseAllDocuments(DockPanel panel) { if (panel.DocumentStyle == DocumentStyle.SystemMdi) { throw new InvalidOperationException("cannot work in System MDI mode"); } IDockContent[] documents = panel.DocumentsToArray(); foreach (IDockContent content in documents) { content.DockHandler.Close(); } }
// protected override void OnLoad(EventArgs e) { // if (base.ShowHint == DockState.Float) { // //base.Size = this.FloatWindowRecommendedSize; // this.Width = this.FloatWindowRecommendedSize.Width; // this.Height = this.FloatWindowRecommendedSize.Height; // base.FloatPane.ClientSize = this.FloatWindowRecommendedSize; // Size a = base.FloatPane.PreferredSize; // base.FloatPane.Size = this.FloatWindowRecommendedSize; // } // } // protected override void OnActivated(EventArgs e) { // if (base.ShowHint == DockState.Float) { // //base.Size = this.FloatWindowRecommendedSize; // this.Width = this.FloatWindowRecommendedSize.Width; // this.Height = this.FloatWindowRecommendedSize.Height; // base.FloatPane.ClientSize = this.FloatWindowRecommendedSize; // Size a = base.FloatPane.PreferredSize; // base.FloatPane.Size = this.FloatWindowRecommendedSize; // } // } // public new void Show(DockPanel dp) { // if (base.ShowHint == DockState.Float) { // //base.Size = this.FloatWindowRecommendedSize; // this.Width = this.FloatWindowRecommendedSize.Width; // this.Height = this.FloatWindowRecommendedSize.Height; // //base.FloatPane.ClientSize = this.FloatWindowRecommendedSize; // //Size a = base.FloatPane.PreferredSize; // //base.FloatPane.Size = this.FloatWindowRecommendedSize; // } // base.Show(dp); // } //http://msdn.microsoft.com/en-us/library/86faxx0d(v=vs.110).aspx // Application.ApplicationExit += new EventHandler(Application_ApplicationExit); // public bool ApplicationExitOccured = false; // void Application_ApplicationExit(object sender, EventArgs e) { // this.ApplicationExitOccured = true; // } // // public bool IsClosing = false; // protected override void OnClosing(System.ComponentModel.CancelEventArgs e) { // this.IsClosing = true; // base.OnClosing(e); // } // // // too late for ExceptionsControl.Splitter*.Distance to serialize // public bool IsFormClosing = false; // protected override void OnFormClosing(System.Windows.Forms.FormClosingEventArgs e) { // this.IsFormClosing = true; // base.OnFormClosing(e); // } // // public bool IsFormClosed = false; // protected override void OnFormClosed(System.Windows.Forms.FormClosedEventArgs e) { // this.IsFormClosed = true; // base.OnFormClosed(e); // } public void ShowAsDocumentTabNotPane(DockPanel dockPanel) { var docs = dockPanel.DocumentsToArray(); if (docs.Length == 0) { this.Show(dockPanel, DockState.Document); return; } // add new tab, not a new pane besides existing one foreach (IDockContent doc in docs) { var hopefullyDockContent = doc as DockContent; if (hopefullyDockContent == null) continue; this.Show(hopefullyDockContent.Pane, null); return; } this.Show(dockPanel, DockState.Document); }
// OUVRIR FENETRE // TOUT FERMER private void CloseAllDocuments() { if (dockPanel.DocumentStyle == DocumentStyle.SystemMdi) { foreach (Form form in MdiChildren) { form.Close(); } } else { foreach (IDockContent document in dockPanel.DocumentsToArray()) { // IMPORANT: dispose all panes. document.DockHandler.DockPanel = null; document.DockHandler.Close(); } } }