OK私はWPFの初心者ですが、タイトルにあるものをwpfで開発する必要がありますが、MVVMに依存していません。私はこれに従いました:
ハードコードライブラリを使用した最初の回答を見つけましたが、難しすぎてMVVMに偏りがあることがわかりました。
そのため、2番目のものに続き、最終的に機能しないことを除いて、すべてがうまくいくように見えました。だから私の 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 フラグが表示され、クリックまたはダブルクリックでメイン ウィンドウが復元されることを期待していました。
しかし、私はトレイにいまいましいものを見ません。
フラグリソースが適切に設定されていると思います ここに私の解決策があります
助けてくれてありがとう。