public void SendToBack() { if (Topmost) { return; } var hWnd = new sw.Interop.WindowInteropHelper(Control).Handle; if (hWnd != IntPtr.Zero) { Win32.SetWindowPos(hWnd, Win32.HWND_BOTTOM, 0, 0, 0, 0, Win32.SWP.NOSIZE | Win32.SWP.NOMOVE); } var window = sw.Application.Current.Windows.OfType <sw.Window> ().FirstOrDefault(r => r != Control); if (window != null) { window.Focus(); } }
protected virtual void SetResizeMode() { if (resizable) { Control.ResizeMode = sw.ResizeMode.CanResizeWithGrip; } else if (minimizable) { Control.ResizeMode = sw.ResizeMode.CanMinimize; } else { Control.ResizeMode = sw.ResizeMode.NoResize; } var hwnd = new sw.Interop.WindowInteropHelper(Control).Handle; if (hwnd != IntPtr.Zero) { var val = Win32.GetWindowLong(hwnd, Win32.GWL.STYLE); if (maximizable) { val |= (uint)Win32.WS.MAXIMIZEBOX; } else { val &= ~(uint)Win32.WS.MAXIMIZEBOX; } if (minimizable) { val |= (uint)Win32.WS.MINIMIZEBOX; } else { val &= ~(uint)Win32.WS.MINIMIZEBOX; } Win32.SetWindowLong(hwnd, Win32.GWL.STYLE, val); } }