protected override void OnDetaching() { DockLayoutManager manager = AssociatedObject as DockLayoutManager; if (manager != null && managers.Contains(manager)) { lock (managers) { foreach (var m in managers) { DockLayoutManagerLinker.Unlink(manager, m); } managers.Remove(manager); } } base.OnDetaching(); }