private static IEnumerable <DockItem> GetActiveDocuments(DockControl dockControl) { DockPaneCollection panes = dockControl.Panes; for (int i = panes.Count - 1; i >= 0; i--) { DockPane pane = panes[i]; DockPosition dockPosition = pane.DockPosition; if (dockPosition != DockPosition.Document) { continue; } DockItemCollection activeItems = pane.ActiveItems; for (int j = activeItems.Count - 1; j >= 0; j--) { yield return(activeItems[j]); } } }
private static IEnumerable <DockItem> GetActiveToolWindows(DockControl dockControl) { DockPaneCollection panes = dockControl.Panes; for (int i = panes.Count - 1; i >= 0; i--) { DockPane pane = panes[i]; DockPosition dockPosition = pane.DockPosition; Debug.Assert(dockPosition != DockPosition.Unknown); if (dockPosition == DockPosition.Hidden || dockPosition == DockPosition.Document) { continue; } DockItemCollection activeItems = pane.ActiveItems; for (int j = activeItems.Count - 1; j >= 0; j--) { yield return(activeItems[j]); } } }