显示错误通知时禁用默认声音

3

我正在使用NotifyIcon类来显示弹出窗口。当我在Windows通知区域中显示错误弹出窗口时,如何禁用默认声音?我需要播放自己的声音,来自资源,但我不知道如何暂时禁用在Windows主题中定义的声音。

我的代码示例:

    public void Notify()
    {
        if (_icon != null)
            return;

        if (!Settings.Default.EnableTrayNotifications)
            return;

        _icon = CreateNotifyIcon(LoadIcon());
        _icon.Visible = true;
        _icon.ShowBalloonTip(Settings.Default.MinimumNotificationInterval);
    }

    private NotifyIcon CreateNotifyIcon(Stream iconStream)
    {
        var icon = new NotifyIcon
                    {
                        Icon = new Icon(iconStream),
                        BalloonTipIcon = ToolTipIcon.Error,
                        BalloonTipTitle = "Sometext",
                        BalloonTipText = "Sometext"
                    };
        icon.BalloonTipClicked += (s,a) => ShowWindow();
        icon.BalloonTipClosed += (s,a) => Cleanup();
        return icon;
    }

感谢合作。

你是如何展示错误弹窗的? - Joe White
就像我之前说的一样,我正在使用WinForms中的NotifyIcon类,对其进行初始化并调用ShowBalloonTip方法。 - Sergei B.
2
很高兴我问了一下 - 第一次你没有告诉我们任何关于这些的信息(没有WinForms标签,没有代码示例,也没有提到气球提示)。在我看来,“显示错误弹出窗口”可能意味着你正在显示一个MessageBox。下次考虑第一次就展示代码示例 - 这对于传达细节非常有帮助。 - Joe White
1个回答

1

您不需要禁用默认声音。您可以创建自己的表单并播放声音。 请参见此链接此链接以获取更多信息。


谢谢,但我不想重复造轮子并创建自己的窗口。还有其他的想法吗? - Sergei B.
有人已经为您发明了轮子。请查看我的回答中的链接。或者搜索“任务栏通知器c#”等内容。 - L.B

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接