using System.Collections.ObjectModel; using System.Collections.Generic; #pragma warning disable CS1591 // 缺少对公共可见类型或成员的 XML 注释 namespace WeifenLuo.WinFormsUI.Docking { public class DockPaneCollection : ReadOnlyCollection { internal DockPaneCollection() : base(new List()) { } internal int Add(DockPane pane) { if (Items.Contains(pane)) return Items.IndexOf(pane); Items.Add(pane); return Count - 1; } internal void AddAt(DockPane pane, int index) { if (index < 0 || index > Items.Count - 1) return; if (Contains(pane)) return; Items.Insert(index, pane); } internal void Dispose() { if (PatchController.EnableNestedDisposalFix == true) { List collection = new List(Items); foreach (var dockPane in collection) { dockPane.Close(); } collection.Clear(); return; } for (int i=Count - 1; i>=0; i--) this[i].Close(); } internal void Remove(DockPane pane) { Items.Remove(pane); } } }