protected override void OnLeftPropertyChanged( double oldValue, double newValue )
{
base.OnLeftPropertyChanged( oldValue, newValue );
_hasWindowContainer = ( VisualTreeHelper.GetParent( this ) as WindowContainer ) != null;
if( !_hasWindowContainer )
{
Left = GetRestrictedLeft();
ProcessMove( newValue - oldValue, 0 );
}
}