我的VS2013解决方案中有两个项目:
从本地json文件使用/生成数据的UWP应用程序
从远程服务器获取数据的Windows窗体 使用Web服务
我希望在我的表单上有一个按钮,以便在获取数据后启动UWP应用程序。 (我无法将这两者集成为因为Web服务认证库不能与W8.1一起使用)
此方法仅启动我的UWP启动画面。它没有进入代码。
Process.Start("MyUWPApp:");
我需要这样的东西:
Process.Start("MyUWPApp:MyEntryPoint");
MyEntryPoint将进入UWP上的清单文件?我一直在为文件中的MyentryPoint尝试各种值,如: 应用程序,MainPage.cs,Main()等。我不确定这是不是这样......任何人?
答案 0 :(得分:2)
您必须覆盖OnActivated(IActivatedEventArgs args)
中的App.xaml.cs
方法才能在UWP应用中处理协议激活。在MSDN上查看here,然后解释它。
我已经以这种方式实现了它,它在我的应用程序中完美运行:
private async void Initialize(IActivatedEventArgs args)
{
// My code copied from original OnLaunched method with some minor changes
}
protected override void OnActivated(IActivatedEventArgs args)
{
Initialize(args);
}
protected override void OnLaunched(LaunchActivatedEventArgs e)
{
Initialize(e);
}
答案 1 :(得分:0)
以下代码对我有帮助。在App.Xaml.cs文件中添加代码。
protected override void OnActivated(IActivatedEventArgs args)
{
Initialize(args);
if (args.Kind == ActivationKind.Protocol)
{
ProtocolActivatedEventArgs eventArgs = args as ProtocolActivatedEventArgs;
Frame rootFrame = Window.Current.Content as Frame;
if (rootFrame == null)
{
// Create a Frame to act as the navigation context and navigate to the first page
rootFrame = new Frame();
rootFrame.NavigationFailed += OnNavigationFailed;
// Place the frame in the current Window
Window.Current.Content = rootFrame;
}
// Always navigate for a protocol launch
rootFrame.Navigate(typeof(MainPage), eventArgs.Uri.AbsoluteUri);
// Ensure the current window is active
Window.Current.Activate();
}
}