C# Winform在任务管理器中隐藏指定窗口

业务环境需求:

  每次打开主窗体都需要进行登录验证, 关闭主窗体只是最小化到系统托盘,并不是真正的退出程序,现关闭主窗体后发现任务管理器中还能找到主窗体的任务,然后能从该任务直接打开主窗体窗口,不需要登录验证就能打开,与业务需求不一致。

解决办法:

  关闭时调用 OnClosing方法,最主要的是需要把ShowInTaskbar的属性设置成false(必要条件)

  

 1     protected override void OnClosing(CancelEventArgs e)
 2         {
 3             if (forceExit)
 4             {                
            Application.Exit();
7 } 8 else 9 { 10 e.Cancel = true; 11 this.Visible = false; 12 this.ShowInTaskbar = false;//为了隐藏任务管理器里的这个窗口 13 } 14 base.OnClosing(e); 15 }

 

  再次打开程序时再把 Visible 和  ShowInTaskbar 设置成true即可。

   1 this.Visible = true;

   2 this.ShowInTaskbar = true;  

 

转载于:

(转载)C#如何在任务管理器中不显示指定的窗体 - 王亚博客 - 博客园 (cnblogs.com)

posted @ 2022-08-18 11:54  进击的黑大帅  阅读(405)  评论(0编辑  收藏  举报