/// <summary> /// Create a new drop shadow which only supports resizing in one direction. /// </summary> /// <param name="window"></param> /// <param name="resizeDirection"></param> public ShadowController(Window window, Direction resizeDirection) { left = new Shadow(Direction.Left); top = new Shadow(Direction.Top); right = new Shadow(Direction.Right); bottom = new Shadow(Direction.Bottom); switch (resizeDirection) { case Direction.Left: top.IsHitTestVisible = false; right.IsHitTestVisible = false; bottom.IsHitTestVisible = false; break; case Direction.Top: left.IsHitTestVisible = false; right.IsHitTestVisible = false; bottom.IsHitTestVisible = false; break; case Direction.Right: left.IsHitTestVisible = false; top.IsHitTestVisible = false; bottom.IsHitTestVisible = false; break; case Direction.Bottom: left.IsHitTestVisible = false; top.IsHitTestVisible = false; right.IsHitTestVisible = false; break; } if (window.IsLoaded) { left.Owner = window; top.Owner = window; right.Owner = window; bottom.Owner = window; } _window = window; window.ContentRendered += window_ContentRendered; window.Activated += window_Activated; window.Deactivated += window_Deactivated; window.StateChanged += window_StateChanged; window.Closed += window_Closed; }
/// <summary> /// Create a new drop shadow. /// </summary> /// <param name="window"></param> public ShadowController(Window window) { left = new Shadow(Direction.Left); top = new Shadow(Direction.Top); right = new Shadow(Direction.Right); bottom = new Shadow(Direction.Bottom); if (window.IsLoaded) { left.Owner = window; top.Owner = window; right.Owner = window; bottom.Owner = window; } _window = window; window.ContentRendered += window_ContentRendered; window.Activated += window_Activated; window.Deactivated += window_Deactivated; window.StateChanged += window_StateChanged; window.Closed += window_Closed; }