从switch-app菜单中删除应用程序条目

时间:2010-04-30 05:43:04

标签: .net c#-2.0 contextmenu winforms

我想要实现的目标是什么? 我在C#.NET 2.0中编写一个基于Windows窗体的应用程序。应用程序应该像这样:不应该看到任何形式;系统托盘图标就是整个应用程序。因此,我必须在启动期间隐藏表单,并在系统托盘中添加NotifyIcon,并附加ContextMenuStrip

到目前为止我做了什么? 我创建了一个Windows应用程序,其默认表单的属性为WindowState-MinimizedShowInTaskbar-false。添加了NotifyIcon并附加了ContextMenuStrip

发生了什么事? 应用程序作为系统托盘图标启动,表单被隐藏。到现在为止还挺好。但是当我使用其他应用程序时,当我在Windows中使用Alt-Tab组合在其他应用程序之间切换时,应用程序图标会出现在切换应用程序菜单中;当我选择我的申请时,表格会出现。

期待什么? 应用程序不应在交换机应用程序菜单中可用;因为,表单是空的,并没有附加功能。所需的只是系统托盘图标。

如何从交换机应用程序菜单中隐藏应用程序条目?

感谢。

2 个答案:

答案 0 :(得分:1)

您可以改变您的程序,根本不显示表单,甚至不加载它。类似的东西:

    [STAThread]
    static void Main()
    {

    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);

    //Instance of your application/form
    NoForm hw = new NoForm();

    Application.Run(); //remove the Form oject from this call

    }

您的应用程序应该可以运行,并且您只显示NotifyIcon。

答案 1 :(得分:0)

Hide();中的private void MainForm_Load(object sender, EventArgs e)电话解决了这个问题。