更新动态磁贴,但哪一个是

本文关键字:哪一个 动态 更新 | 更新日期: 2023-09-27 18:35:14

我有一个带有固定辅助动态磁贴的应用程序,它们在磁贴背面显示天数,我想减少每天的天数。现在的问题是,我不想更改磁贴的其他属性(例如标题,图像等),而只想更改背面的内容(字符串):FlipTileData.BackContent所以我不想创建新的 FlipTileData 来将其作为 Update 方法的参数传递。

第二个问题:我怎么知道我要更新的是哪个磁贴?我试过这个:

foreach (ShellTile tile in ShellTile.ActiveTiles)但瓷砖没有给我帮助的属性。我应该使用 NavigationUri 来找出哪个磁贴吗?

更新动态磁贴,但哪一个是

按照此示例在 Windows Phone 7 中使用动态磁贴,它应该可以解决您的问题。

请注意代码上的x.NavigationUri.ToString().**Contains("Title=SecondaryTile")**

编辑:

结合该网站的几行代码:

// modify Application Secondary Tile data
private void updateTile_Click(object sender, RoutedEventArgs e)
{
    // get application specific tile - EXAMPLE
    ShellTile Tile = ShellTile.ActiveTiles.FirstOrDefault(x => x.NavigationUri.ToString().Contains("Title=SecondaryTileEXAMPLE_TITLE"));
    if (null != tile)
    {
        // create a new data for tile
        StandardTileData data = new StandardTileData();
        // tile foreground data
        data.Title = "Title text here";
        data.BackgroundImage = new Uri("/Images/Blue.jpg", UriKind.Relative);
        data.Count = random.Next(99);
        // to make tile flip add data to background also
        data.BackTitle = "Secret text here";
        data.BackBackgroundImage = new Uri("/Images/Green.jpg", UriKind.Relative);
        data.BackContent = "Back Content Text here...";
        // update tile
        tile.Update(data);
    }
}