NotifyIcon.ShowBalloonTip不保持超时
我显示通知信息:
notifyIcon.ShowBalloonTip(29000, "title", "message", ToolTipIcon.Info);
它应该显示29000毫秒,但它会在不到一秒钟内消失。
我知道这是由操作系统控制的。 但应该有办法增加节目的持续时间?
使用Windows 7。
来自ShowBalloonTip上的MSDN文章
“操作系统强制执行最小和最大超时值,通常分别为10秒和30秒,但这可能会因操作系统而异。过大或过小的超时值都会调整到适当的最小值或最大值此外,如果用户似乎没有使用计算机(没有发生键盘或鼠标事件),则系统不会计算此时间超时。“
您可以阅读以下整个function:
在显示气球之前,请确保NotifyIcon可见:
notifyIcon.Visible = true; //then show the balloon tip
此外,如果显示任何其他气球提示,您的将被忽略。
它取决于操作系统设置,在每个操作系统中它是不同的。 最好的方法是使用自制的气球。
我知道这是一个非常古老的问题,现在可以回答,但它将来的参考和那些会遇到这个问题的读者。
好吧,我在我的一个winform应用程序中遇到了同样的问题,然后我遇到了这个Github链接–Windows Toast Notifications
是的,它很容易集成到您的c#winform应用程序中。 你所要做的就是 –
- 从上面的Github链接下载代码。
-
将以下类文件添加到c#winform应用程序中
FormAnimator.cs
NativeMethods.cs
-
将Notifications.cs表单添加到您的应用程序
-
在项目代码中创建一个Toast通知表单对象,并调用
Show()
方法来显示它。
示例代码
var toastNotification = new Notification ( "My Notification", message, durationsTime, FormAnimator.AnimationMethod.Slide, FormAnimator.AnimationDirection.Up ); //PlayNotificationSound("normal"); toastNotification.Show();