.NET NotifyIcon 在 Windows 10 中显示吐司通知两次

.NET NotifyIcon displays a toast notification twice in Windows 10

我使用 .NET Framework System.Windows.Forms.NotifyIcon class 来显示托盘图标和托盘通知。当我在其实例上调用 ShowBalloonTip 时,首先会再次显示先前显示的通知,然后它会隐藏,并且仅在一段时间后才会显示预期的通知。好像历史通知先显示,除非我手动从通知中心删除它们。

如何以编程方式防止再次显示历史通知?

这是我初始化通知图标的方法:

notifyIcon.Icon = Properties.Resources.tray_icon;
notifyIcon.Visible = true;

notifyIcon.BalloonTipTitle = Language.TrayMessageTitle;

这是我敬酒的方式:

notifyIcon.BalloonTipIcon = icon;
notifyIcon.BalloonTipText = message;
notifyIcon.ShowBalloonTip(0);

所以我决定坚持处理通知图标实例并在每次显示 toast 通知时重新创建它。我觉得不太好,但我找不到更好的解决方案。

我还在应用程序关闭时处理了通知图标,以清除通知中心以前显示的通知。否则,当另一个应用程序显示吐司时,最后一个首先显示。