辅助瓷砖与模板10

时间:2016-10-18 21:59:24

标签: c# uwp template10

我在使用Template 10的二级瓷砖时遇到了一些问题。

首先是我在我正在使用的版本(1.1.12)中找不到SecondaryTileService,即使源位于GitHub存储库中并且看起来很旧。我尝试过搜索模板10服务nuget包但找不到。

为了使用辅助磁贴服务,我已将源代码复制到我的应用程序..

我遇到的第二个问题是如何处理辅助磁贴的启动。我似乎没有找到任何关于此的文件。

在非Template 10应用程序中,我可以覆盖App.xaml.cs中的OnLaunched方法,并使用LaunchActivatedEventArgs参数的TileId和Arguments属性来处理相关视图的导航。

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

2 个答案:

答案 0 :(得分:1)

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

在模板10中处理从辅助磁贴启动是一个相当模糊的过程。

首先,在OnStartAsync方法中,使用DetermineStartCause的{​​{1}}方法获取Bootstrapper枚举值。如果值为AdditionalKinds,则应用程序是从辅助磁贴启动的。然后,您可以将AdditionalKinds.SecondaryTile参数转换为IActivatedEventArgs,其中包含TileId和启动参数。

示例实施:

LaunchActivatedEventArgs

答案 1 :(得分:0)

  

为了使用辅助磁贴服务,我已将源代码复制到我的应用程序..

我认为您使用此SecondaryTileService做了正确的事情,还有其他服务,例如LocationService,它们只是不包含在模板10的Nuget包中。< / p>

  

我遇到的第二个问题是如何处理辅助磁贴的启动。我似乎没有任何关于此的文件。

您可以参考&#34;引导程序&#34;本博客的一部分:Template10: a new template to create Universal Windows apps – The basics

OnStartAsync()方法中,您可以从辅助磁贴处理启动。

  

核心是OnStartAsync()方法,它是应用程序的起点,无论激活方案如何。无论是使用主磁贴,辅助磁贴还是吐司通知打开应用程序,都将始终调用OnStartAsync()方法,让您作为开发人员处理主导航。