UWP模态窗口

时间:2016-01-13 00:35:01

标签: c# xaml windows-10 win-universal-app uwp

我想在我的通用Windows平台应用程序(C#)中在屏幕上显示一个模态窗口,就像添加帐户时标准的Mail-app一样。或者当您在应用程序中登录服务(如Facebook)时

带有模态窗口的Windows邮件应用程序: Windows 10 mail app - Add account screen

你可以移动这个窗口,但它不在任务栏中,而且是模态的。

有谁知道怎么做?它不应该那么难,但我找不到任何关于它的东西。

3 个答案:

答案 0 :(得分:7)

正如@Daniel Meixner所说,添加此邮件应用的帐户互动,可以使用LaunchForResults调用另一个应用。

使用Task Manager系统,您可以看到,当您启动此邮件应用程序时,它会启动一个应用程序名称为“Mail”的进程,当您从此应用程序添加帐户时,它会启动另一个进程使用应用程序的名称“电子邮件和帐户”。

enter image description here

如果我们使用Process Explorer来检查这些进程,那么Mail应用程序的流程如下: enter image description here

并且添加帐户流程是这样的: enter image description here

它们处于不同的进程中,并且具有不同的包名称。

所以我创建了两个应用程序并使用LaunchForResult进行这些应用程序之间的通信,它们就像系统的Mail应用程序一样。 enter image description here

如果您只想启动系统的“添加帐户”应用,可以参考官方UserDataAccountManager sample

答案 1 :(得分:3)

在邮件应用程序中发生的事情可能是应用程序与“LaunchForResults”的应用程序通信 - 我不确定,但它看起来像那样。

使用Windows 10 Universal Apps,您可以使用LaunchForResults让一个应用程序调用另一个应用程序。被调用的应用程序将始终像调用应用程序的模式对话框。 您可以使用ValueSets在两个方向上传递任何可序列化的对象。

可以在此处找到LaunchForResult的详细信息: https://msdn.microsoft.com/en-us/library/windows/apps/mt269386.aspx

答案 2 :(得分:0)