当应用程序在后台时,如何在UWP中打开Surface Hub应用程序中的弹出窗口?

时间:2017-05-29 09:28:30

标签: uwp surface-hub

我正在开发一个表面集线器应用程序,其中我在应用程序进入后台时运行计时器。 在特定时间点,我需要在屏幕中央显示一个弹出窗口,无论应用程序状态如何 - 最小化或活动。

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

如果您使用时间触发器注册in-process background task,则每次触发后台任务时都会调用OnBackgroundActivated事件。因此,您可以在此事件中定义弹出代码。无论您的应用程序是最小化还是活动,都将触发进程内后台任务。例如:

寄存器:

public MainPage()
{
   this.InitializeComponent();
   var builder = new BackgroundTaskBuilder();
   builder.Name = "My Background Trigger";
   builder.SetTrigger(new TimeTrigger(15, true));      
   BackgroundTaskRegistration task = builder.Register();
}

覆盖OnBackgroundActivated事件并显示一个简单的弹出窗口。

protected async override void OnBackgroundActivated(BackgroundActivatedEventArgs args)
{
    base.OnBackgroundActivated(args);
    await new Windows.UI.Popups.MessageDialog("test").ShowAsync();
    //DoBackgroundWork(args.TaskInstance);
}