WPF 程序最大化,窗口,最小化

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

public static void FullOrMin(this Window window)

{

//如果是全屏,则最小化

if (window.WindowState == WindowState.Maximized)

{

window.Topmost = false;

window.WindowState = WindowState.Normal;

window.WindowStyle = WindowStyle.SingleBorderWindow;

window.ResizeMode = ResizeMode.CanResizeWithGrip;//设置为可调整窗体大小

window.Width = 800;

window.Height = 600;

//获取窗口句柄

var handle = new WindowInteropHelper(window).Handle; //获取当前显示器屏幕

Screen screen = Screen.FromHandle(handle);

window.Left = (screen.Bounds.Width - window.Width) / 2; window.Top = (screen.Bounds.Height - window.Height) / 2; window.WindowState = WindowState.Minimized;

return;

}

//如果是窗口,则全屏

if (window.WindowState == WindowState.Normal)

{

//变成无边窗体

window.WindowState = WindowState.Normal;//假如已经是Maximized,就不能进入全屏,所以这里先调整状态

window.WindowStyle = WindowStyle.None;

window.ResizeMode = ResizeMode.NoResize;

window.Topmost = true;//最大化后总是在最上面

//获取窗口句柄

var handle = new WindowInteropHelper(window).Handle; //获取当前显示器屏幕

Screen screen = Screen.FromHandle(handle);

//调整窗口最大化,全屏的关键代码就是下面3句

window.MaxWidth = screen.Bounds.Width;

window.MaxHeight = screen.Bounds.Height;

window.WindowState = WindowState.Maximized;

//解决切换应用程序的问题

window.Activated += new EventHandler(window_Activated);

相关文档
最新文档