实时平铺更新

时间:2013-05-13 05:02:30

标签: c# xml windows-8 live-tile

我有一个媒体应用程序,需要在Live Tile上显示曲目图像和标题。现在我有以下代码: -

private void SetLiveTile()
    {
        var LiveTile = @"<tile>
                            <visual version=""1"">
                              <binding template=""TileWideSmallImageAndText01"">
                                <text id=""1"">" + MediaControl.ArtistName + " - " + MediaControl.TrackName + @"</text>
                                <image id=""1"" src=" + MediaControl.AlbumArt + @"""/>
                              </binding>
                              <binding template=""TileSquarePeekImageAndText02"">
                                <text id=""1"">" + MediaControl.ArtistName + " - " + MediaControl.TrackName + @"</text>
                                <image id=""1"" src=" + MediaControl.AlbumArt + @"""/>
                              </binding>
                            </visual>
                          </tile>";

        XmlDocument tileXml = new XmlDocument();
        tileXml.LoadXml(LiveTile);

        var tileNotification = new Windows.UI.Notifications.TileNotification(tileXml);
        Windows.UI.Notifications.TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification);
    }

目前无效,LoadXml失败,错误代码为c00ce502。

我还需要它至少每1分钟更新一次,但如果我每隔30秒更新一次就会很棒。它还需要删除活动磁贴,并在应用程序关闭时恢复到原始磁贴。

1 个答案:

答案 0 :(得分:1)

对于XML问题,您似乎错过了src代码中的开头报价,请尝试

 <image id=""1"" src=""" + MediaControl.AlbumArt + @"""/>

至于基于一分钟或30秒的更新,请查看this sample on dev.windows.com

在终止时清除磁贴可能会非常棘手,因为您没有以编程方式通知应用程序确实被终止的所有情况。