WPFアプリをタスクトレイに常駐させるクラス

WpfNotifyIcon
WpfNotifyIcon.zip
zip ( 圧縮 ) ファイル 3.6 KB

WPFのWindowをタスクトレイに常駐させるクラスです。

クラス自体のコードは少し長いので使い方を下に示します。

クラスは上からダウンロードしてください。

 

とりあえず、AttachメソッドとDisposeメソッドをやっとけば動きます。

追加プロパティは以下のコード以外にもあるので、クラスの定義見てください。

アイコンは指定しなければデフォルトのものが使用されます。

 

あ、参照は追加してくださいね。

確か、 「System.Windows.Forms」、「System.Drawing」あたりを追加する必要があります。

 

以下、コード

public partial class MainWindow : Window
{
    WpfNotifyIcon notifyIcon = new WpfNotifyIcon();

    public MainWindow()
    {
        InitializeComponent();

        // タスクトレイに表示するための設定(一部抜粋)
        // タスクトレイ常駐中にタスクバーに表示するか?
        // notifyIcon..ShowInTaskbar = true;
        // 最初にWindowを非表示にするか?
        // notifyIcon.AttachWithHide = false;
        // デフォルトの「終了」メニューを使用するか?
        // notifyIcon.UseDefaultCloseMenuItem = false;

        // タスクトレイのアイコンとWindowを関連付ける
        notifyIcon.Attach(this);
    }

    private void Window_Closed(object sender, EventArgs e)
    {
        // 終了時は必ずDispose
        notifyIcon.Dispose();
    }

}

2012.02.05