public void FloatAt(Rectangle floatWindowBounds)
{
if (this.FloatWindow == null || this.FloatWindow.NestedPanes.Count != 1)
{
var p = new Point(floatWindowBounds.Left, floatWindowBounds.Top);
floatWindowBounds = new Rectangle(p, (this.Contents[0] as DockContent).DefaultFloatSize);
this.FloatWindow = this.DockPanel.FloatWindowFactory.CreateFloatWindow(this.DockPanel, this, floatWindowBounds);
}
else
this.FloatWindow.Bounds = floatWindowBounds;
this.DockState = DockState.Float;
this.NestedDockingStatus.NestedPanes.Remove(this);
}