繁体   English   中英

Windows 10通用XAML吐司通知

[英]Windows 10 Universal XAML Toast Notifications

我有Win 10 Universal App,该应用程序根据应用程序中的各种事件显示吐司通知。

我的问题是,仅在应用程序处于活动状态时才显示吐司通知(未最小化到任务栏)。

使用其他任何应用程序时,我需要该应用程序来显示通知。 我的设置如下: 在此处输入图片说明

吐司调用代码:

private void DisplayNotification()
        {
            string toastXmlString = "<toast>"
                               + "<visual version='1'>"
                               + "<binding template='ToastText04'>"
                               + "<text id='1'>Header</text>"
                               + "<text id='2'>Line 1</text>"
                               + "<text id='3'>Line 2</text>"
                               + "</binding>"
                               + "</visual>"
                               + "</toast>";

            Windows.Data.Xml.Dom.XmlDocument toastDOM = new Windows.Data.Xml.Dom.XmlDocument();
            toastDOM.LoadXml(toastXmlString);

            // Create a toast, then create a ToastNotifier object to show
            // the toast
            ToastNotification toast = new ToastNotification(toastDOM);

            ToastNotificationManager.CreateToastNotifier().Show(toast);
        }

有人知道为什么吗?

您需要为此创建一个新的BackgroundTask。 那里有许多解决方案,但这里是简短列表:

  1. 将新的Windows运行时组件项目添加到解决方案。
  2. 在声明的清单中添加新的后台任务,然后选择“推送通知”和/或“计时器”。
  3. 将入口点设置为标准名称(namespace.classname)
  4. 在应用启动时注册任务

    如果(BackgroundTaskRegistration.AllTask​​s.Any(task => task.Value.Name == TaskNameConst))返回;

    BackgroundTaskBuilder builder = new BackgroundTaskBuilder(); builder.Name = TaskNameConst; builder.TaskEntryPoint = TaskEntryPointConst; builder.SetTrigger(new TimeTrigger(15,false)); builder.Register();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM