Winform程序全部关闭代码(C#)

  我们在写winform程序时,经常会使用在一个窗口中通过点击产生另外一个窗口,原来的窗口通过this.hide()代码而隐藏。紧接着可能我们直接关闭第二层窗口来结束程序,但是调试过程中会发现我们的程序并没有正常关闭,而是到了后台运行,这样的程序如果做出软件来使用,就会造成内存资源大量占用而产生浪费,下面的代码就是解决这一问题:

/// <summary>
/// 关闭程序
/// </summary>
protected override void WndProc(ref Message m)
{
   const int WM_SYSCOMMAND = 0x0112;
   const int SC_CLOSE = 0xF060;
   if (m.Msg == WM_SYSCOMMAND && (int)m.WParam == SC_CLOSE)
   {
       Application.Exit();
    }
    base.WndProc(ref m);
}

如何使用上面的代码:在哪个窗口中想要实现关闭这一窗口就结束整个程序,就将这个函数放在该窗口的cs程序中,不需要做其他任何操作,也不需要从其他地方引用。

是不是很神奇!!!

上一篇:WM


下一篇:[不务正业]单纯收个支线的第二天