WPF - 将应用程序从系统托盘置于最前面
Posted
技术标签:
【中文标题】WPF - 将应用程序从系统托盘置于最前面【英文标题】:WPF - Bring application to front from system tray 【发布时间】:2019-03-16 16:31:12 【问题描述】:我正在使用 System.Windows.Forms.NotifyIcon 将我的应用最小化到系统托盘。我想在用户尝试打开应用程序的另一个实例时将应用程序返回到前面。
如果应用的第一个实例隐藏在其他应用之后,this site 的代码可以正常工作,但在最小化到系统托盘时就不行。
如何使用 WPF 实现这一点?
【问题讨论】:
【参考方案1】:你可以通过为通知图标注册点击事件来实现这一点,你可以
private void SetSystemTrayIcon()
System.Windows.Forms.NotifyIcon notifyIcon = new System.Windows.Forms.NotifyIcon
Icon = new System.Drawing.Icon(sri.Stream),
Visible = true
;
notifyIcon.Click += NotifyIcon_Click;
private void NotifyIcon_Click(object sender, EventArgs e)
var mainWindow = Application.Current.Windows[0];
mainWindow.Show();
希望对你有帮助
【讨论】:
感谢您的解决方案。 :) 但是我想要的是在用户运行应用程序的另一个实例时调用类似的功能,而不是在单击系统托盘中的图标时调用。以上是关于WPF - 将应用程序从系统托盘置于最前面的主要内容,如果未能解决你的问题,请参考以下文章