无窗口托盘图标应用程序

时间:2015-12-16 16:13:53

标签: c# wpf tray windowless

好吧我是WPF的新手,但我必须用wpf开发标题中的内容,但不要依赖MVVM。 我跟着这个:

WPF Application that only has a tray icon

我找到了第一个带有hardcodet lib的答案,但发现它太难了,MVVM有偏见。

所以跟着第二个,一切似乎都很好,但最终它不起作用。 所以在我的App.xaml.cs中我放了:

public partial class App : Application
{
    private System.Windows.Forms.NotifyIcon notifyIcon = null;

    protected override void OnStartup(StartupEventArgs e)
    {
      base.OnStartup(e);
      UnityCore.Initialize();
    }

    protected override void OnActivated(EventArgs e)
    {
      notifyIcon = new System.Windows.Forms.NotifyIcon();
      notifyIcon.Click += NotifyIcon_Click;
      notifyIcon.DoubleClick += NotifyIcon_DoubleClick;

      Stream iconStream = Application.GetResourceStream(new Uri("pack://application:,,,/Resources/Images/ITA.png")).Stream;
      notifyIcon.Icon = new System.Drawing.Icon(iconStream);
      notifyIcon.Visible = true;
      base.OnActivated(e);
    }

    private void NotifyIcon_DoubleClick(object sender, EventArgs e)
    {
      Console.Beep();//show main window
    }

    private void NotifyIcon_Click(object sender, EventArgs e)
    {
      Console.Beep();//show main window
    }
}

开始时的主窗口是透明的,最小化以使其不可见。

在此阶段,我希望在托盘图标中看到ITA标志,然后单击或双击恢复主窗口。

但我在托盘上看不到该死的东西。

我认为标志资源在这里已经正确设置了我的解决方案

enter image description here

Thanx寻求帮助。

0 个答案:

没有答案