public FloatingWindow(DockContainer dc) { // Don't set 'Owner' to 'Window.GetWindow(dc)', 'dc' may not have an owner // window yet. Also, it's nice to allow floating windows behind the main window. InitializeComponent(); Content = new DockPanel { LastChildFill = true }; DockContainer = dc; PinState = new PinData(this, EPin.Centre); Root = new Branch(dc, DockSizeData.Quarters); SizeChanged += delegate { DockContainer.NotifyLayoutChanged(); }; }