public INewTabHost<Window> GetNewHost(IInterTabClient interTabClient, object partition, TabablzControl source)
        {
            if (SourceTabablzControl == null)
            {
                SourceTabablzControl = source;
                SourceTabablzControl.IsVisibleChanged += SourceTabablzControl_IsVisibleChanged;
            }

            var window = new DragablzWindow();
            window.Height = source.ActualHeight;
            window.Width = source.ActualWidth;
            window.WindowState = WindowState.Normal;
            window.SizeChanged += Window_SizeChanged;
            window.StateChanged += Window_StateChanged;

            var tabControl = new TabablzControl();
            window.Content = tabControl;
            var newTabHost = new NewTabHost<Window>(window, tabControl);
            NewTabHosts.Add(newTabHost);
            window.Closed += Window_Closed;
            return newTabHost;
        }
        public INewTabHost<Window> GetNewHost(IInterTabClient interTabClient, object partition, TabablzControl source)
        {
            if (SourceTabablzControl == null)
            {
                SourceTabablzControl = source;
                SourceTabablzControl.IsVisibleChanged += SourceTabablzControl_IsVisibleChanged;
            }

            var window = new DragablzWindow {WindowState = WindowState.Normal};
            window.SizeChanged += Window_SizeChanged;
            window.StateChanged += Window_StateChanged;

            var tabControl = new TabablzControl
            {
                InterTabController = new InterTabController {InterTabClient = new DockableTabInterTabClient()}
            };

            window.Content = tabControl;
            var newTabHost = new NewTabHost<Window>(window, tabControl);
            NewTabHosts.Add(newTabHost);
            window.Closed += Window_Closed;
            return newTabHost;
        }