/// <summary> /// Reacts on the window state changed event /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OnWindowStateChanged(object sender, EventArgs e) { switch (WindowState) { case WindowState.Normal: if (storedResizeDirections != null) { ResizeDirections = storedResizeDirections.Value; storedResizeDirections = null; } break; case WindowState.Minimized: break; case WindowState.Maximized: storedResizeDirections = ResizeDirections; ResizeDirections = ResizeDirectionFlags.None; break; } }
private void UpdateBorders(ResizeDirectionFlags value) { // ReSharper disable PossibleNullReferenceException ((Thumb)GetTemplateChild("PART_SizeN")).IsEnabled = (value & ResizeDirectionFlags.SizeN) == ResizeDirectionFlags.SizeN; ((Thumb)GetTemplateChild("PART_SizeS")).IsEnabled = (value & ResizeDirectionFlags.SizeS) == ResizeDirectionFlags.SizeS; ((Thumb)GetTemplateChild("PART_SizeW")).IsEnabled = (value & ResizeDirectionFlags.SizeW) == ResizeDirectionFlags.SizeW; ((Thumb)GetTemplateChild("PART_SizeE")).IsEnabled = (value & ResizeDirectionFlags.SizeE) == ResizeDirectionFlags.SizeE; ((Thumb)GetTemplateChild("PART_SizeSE")).IsEnabled = (value & ResizeDirectionFlags.SizeSE) == ResizeDirectionFlags.SizeSE; ((Thumb)GetTemplateChild("PART_SizeNW")).IsEnabled = (value & ResizeDirectionFlags.SizeNW) == ResizeDirectionFlags.SizeNW; ((Thumb)GetTemplateChild("PART_SizeSW")).IsEnabled = (value & ResizeDirectionFlags.SizeSW) == ResizeDirectionFlags.SizeSW; ((Thumb)GetTemplateChild("PART_SizeNE")).IsEnabled = (value & ResizeDirectionFlags.SizeNE) == ResizeDirectionFlags.SizeNE; // ReSharper restore PossibleNullReferenceException }
/// <summary> /// Initialize the Transparent Window /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void InitializeTransparentWindow(object sender, EventArgs e) { // First Time initialization if (GetValue(ResizeDirectionsProperty) == null) ResizeDirections = ResizeDirectionFlags.SizeN | ResizeDirectionFlags.SizeS | ResizeDirectionFlags.SizeW | ResizeDirectionFlags.SizeE | ResizeDirectionFlags.SizeSE | ResizeDirectionFlags.SizeNW | ResizeDirectionFlags.SizeSW | ResizeDirectionFlags.SizeNE; }