2016-01-13 144 views
3

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

的Windows Mail应用程序与模式窗口: Windows 10 mail app - Add account screen

您可以四处移动这个窗口,但它不是在任务栏,它是模态。

有谁知道如何做到这一点?它不应该那么难,但我找不到任何关于它的事情。

回答

7

正如@Daniel Meixner说,这个邮件应用程序的账户交互调用另一个应用程序可能与LaunchForResults

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

enter image description here

如果我们使用Process Explorer来检查这些程序,邮件应用程序的过程是这样的: enter image description here

和添加帐户的过程是这样的: enter image description here

他们在不同的进程和不同的软件包名称。

因此,我创建了两个应用程序,并使用LaunchForResult在这些应用程序之间进行通信,它们的行为与系统的Mail应用程序相似。 enter image description here

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

3

在邮件应用程序所发生的事情可能会应用与“LaunchForResults”应用程序通讯 - 我不知道,但它看起来像。

使用Windows 10 Universal Apps,您可以使用LaunchForResults使一个应用程序调用另一个应用程序。被调用的应用程序总是表现得像调用应用程序的模态对话框。 您可以使用ValueSet传递两个方向上的任何可序列化的对象。

细则LaunchForResult可以在这里找到: https://msdn.microsoft.com/en-us/library/windows/apps/mt269386.aspx