UWP Share Target打开主视图

时间:2016-05-28 00:19:30

标签: uwp sharing uwp-xaml data-sharing

我在我的应用中遇到了共享目标实施问题。这让我发疯了。

我的App.xaml.cs:

protected override void OnShareTargetActivated(ShareTargetActivatedEventArgs args)
        {
            var rootFrame = new Frame();
            rootFrame.Navigate(typeof(ShareTarget), args.ShareOperation);
            Window.Current.Content = rootFrame;
            Window.Current.Activate();
        }

工作正常! - >下一篇:
在我的ShareTarget.cs中我会简单地#34;如果打开或未打开,请打开应用程序主窗口。

目前我有:

        await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => Frame.Navigate(typeof(MainPage), this));

仅打开右侧内的主页"共享"帧。我想打开主框架。

在MainPage的OnNavigatedTo方法

在这里,我尝试打开一个新视图并使用以下方法解除共享框架

var newView = CoreApplication.CreateNewView();
                await newView.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
                {
                    var frame = new Frame();
                    frame.Navigate(typeof(MainPage), null);
                    Window.Current.Content = frame;
                });

如果应用已关闭,我会收到此错误:

  

WinRT信息:因为主窗口无法创建新视图   尚未创建

如果应用程序处于打开状态,右侧的共享框架将导航至MainPage并在几秒钟后关闭。

不能相信微软已经很难形成正确的实施。

1 个答案:

答案 0 :(得分:1)

似乎可能的唯一方式就像@Raymon Chen通过创建协议启动建议的那样。

我用这个页面很好地解释了这一点:

http://www.c-sharpcorner.com/UploadFile/6f0898/inter-app-communications-in-windows-10-uwp535/

它包含一些拼写错误。请小心。