如何为Application Tile设置初始值

时间:2012-08-22 17:28:44

标签: c# windows-phone-7 live-tile

我希望我的应用程序磁贴有翻转动画,我试图在我的MainPage的代码隐藏中设置这些值,但由于某种原因,应用程序磁贴不执行翻转动画。我相信我正确设置了背面值。我所拥有的如下:

MainPage.xaml.cs中

public void CreateApplicationTile()
    {
        var appTile = ShellTile.ActiveTiles.First();

        if (appTile != null)
        {
            var standardTile = new StandardTileData
            {
                Title = "ShareSky",
                BackgroundImage = new Uri("/Background.png", UriKind.Relative),
                BackTitle = "ShareSky",
                BackBackgroundImage = new Uri("/Background.png", UriKind.Relative),
                //BackContent = "click me!"                    
                BackContent = AppResource.Main_MainPage_ApplicationTile_BackContent
            };

            appTile.Update(standardTile);
        }
    }

据我所知,此方法不需要与任何类型的任何事件(例如点击)相关联以使其工作。我不确定我在这里做错了什么?如果我必须编辑WMAppManifest文件,我如何正确地执行此操作以合并磁贴信息的背面?

1 个答案:

答案 0 :(得分:1)

愚蠢的问题,但你实际上是在构造函数中调用“CreateApplicationTile”吗?如果你不这样做,就永远不会激活。

    public MainPage()
    {
        InitializeComponent();
        CreateApplicationTile();
    }

我跑了以下,得到了很快乐的翻车。

   var appTile = ShellTile.ActiveTiles.FirstOrDefault(x => x.NavigationUri.ToString() == "/");
   if (appTile != null)
   {
        var standardTile = new StandardTileData
        {
                Title = "ShareSky",
                BackgroundImage = new Uri("/Background.png", UriKind.RelativeOrAbsolute),
                BackTitle = "ShareSky",
                BackBackgroundImage = new Uri("/flipped.png", UriKind.RelativeOrAbsolute),
                BackContent = "backcontent load"
        };

        appTile.Update(standardTile);
     }