首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模板10的二次瓷砖

模板10的二次瓷砖
EN

Stack Overflow用户
提问于 2016-10-18 21:59:24
回答 2查看 108关注 0票数 0

我有几个问题,二次瓷砖与模板10。

第一种情况是,即使源代码在GitHub存储库中并且看起来很旧,在我使用的版本(1.1.12)中也找不到这个GitHub。我已经尝试搜索一个模板10服务nuget包,但找不到一个。

为了使用辅助瓷砖服务,我将源代码复制到我的应用程序中。

我的第二个问题是如何处理从二次瓷砖发射。我似乎找不到这方面的任何文档。

在非模板10应用程序中,我可以在App.xaml.cs中重写App.xaml.cs方法,并使用LaunchActivatedEventArgs参数的TileId和参数属性来处理指向相关视图的导航。

但是,模板10 BootStrapper封装了OnLaunched方法,并且没有提供任何明显提供启动参数的内容。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-10-20 09:52:03

在GitHub中看到的模板10服务没有包含在任何Nuget包中,原因不明。

在模板10中,处理从第二块瓷砖启动是一个相当模糊的过程。

首先,在OnStartAsync方法中,使用BootstrapperDetermineStartCause方法获得AdditionalKinds枚举值。如果值为AdditionalKinds.SecondaryTile,则该应用程序是从第二个瓷砖启动的。然后,可以将IActivatedEventArgs参数转换为LaunchActivatedEventArgs,其中包含TileId和启动参数。

抽样实施情况:

代码语言:javascript
复制
public override Task OnStartAsync(StartKind startKind, IActivatedEventArgs args)
{
    AdditionalKinds cause = DetermineStartCause(args);
    if (cause == AdditionalKinds.SecondaryTile)
    {
        LaunchActivatedEventArgs eventArgs = args as LaunchActivatedEventArgs;
        NavigationService.Navigate(typeof (DetailPage), eventArgs.Arguments);
    }
    else
    {
        NavigationService.Navigate(typeof (MainPage));
    }

    return Task.FromResult<object>(null);
}
票数 1
EN

Stack Overflow用户

发布于 2016-10-20 07:27:09

为了使用辅助瓷砖服务,我将源代码复制到我的应用程序中。

我认为您使用这个SecondaryTileService是正确的,还有其他服务,例如LocationService,它们只是没有包含在模板10的Nuget包中。

我的第二个问题是如何处理从二次瓷砖发射。我似乎找不到这方面的任何文档。

您可以参考这个博客的“引导程序”部分:Template10:创建通用Windows应用程序的新模板--基础

OnStartAsync()方法中,您可以从第二块处理启动。

核心是OnStartAsync()方法,它是应用程序的起点,与激活的场景无关。无论应用程序是使用主块、次块还是从to通知打开的,OnStartAsync()方法都会被调用以让您作为开发人员处理主导航。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40118798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档