diff --git a/source/Components/Xceed.Wpf.AvalonDock/Controls/LayoutAnchorableFloatingWindowControl.cs b/source/Components/Xceed.Wpf.AvalonDock/Controls/LayoutAnchorableFloatingWindowControl.cs index 246de59e..0079a322 100644 --- a/source/Components/Xceed.Wpf.AvalonDock/Controls/LayoutAnchorableFloatingWindowControl.cs +++ b/source/Components/Xceed.Wpf.AvalonDock/Controls/LayoutAnchorableFloatingWindowControl.cs @@ -162,7 +162,8 @@ protected override void OnClosed( EventArgs e ) root.FloatingWindows.Remove( _model ); } - SetBinding(VisibilityProperty, string.Empty); + // We have to clear binding instead of creating a new empty binding. + BindingOperations.ClearBinding(_model, VisibilityProperty); _model.PropertyChanged -= new System.ComponentModel.PropertyChangedEventHandler( _model_PropertyChanged ); } diff --git a/source/Components/Xceed.Wpf.AvalonDock/DockingManager.cs b/source/Components/Xceed.Wpf.AvalonDock/DockingManager.cs index dab25ed3..3e4ecf17 100644 --- a/source/Components/Xceed.Wpf.AvalonDock/DockingManager.cs +++ b/source/Components/Xceed.Wpf.AvalonDock/DockingManager.cs @@ -2400,7 +2400,8 @@ private void DockingManager_Unloaded( object sender, RoutedEventArgs e ) //fw.Owner = null; fw.SetParentWindowToNull(); fw.KeepContentVisibleOnClose = true; - fw.Close(); + // To avoid calling Close method multiple times. + fw.InternalClose(); } _fwList.Clear();