动态更新WMAppManifest文件

Ane*_*esh 2 c# silverlight windows-phone-7 windows-phone-8

在我的Windows Phone 8应用程序中,我想访问WMAppManifest文件.我还想动态更新循环切片图像路径.如何动态更新Manifest文件?请帮我.

Jus*_*gel 7

要在WP7/WP8上更新主要磁贴,您无需更新WmAppManfiest.而是调用ShellTile.ActiveTiles.First().Update(myTileData)与WmApManfiest中分解的瓦片类型匹配的瓦片数据.ShellTile.ActiveTIles拥有所有应用程序的贴.ShellTile.ActiveTIles集合中的第一个图块始终是应用程序的主图块,每个后续图块始终是辅助图块.

您可以通过使用新数据调用更新来更新磁贴.这是一篇很棒的文章,内容涉及如何设置和更新所有新的WP8磁贴(Flip,Iconic和Cyclic).@ http://codingchick.net/?p=17

文章中的代码示例非常简单:

   27  // Select the application tile
   28             ShellTile myTile = ShellTile.ActiveTiles.First();
   29             if (myTile != null)
   30             {
   31                 // Create a new data to update my tile with
   32                 FlipTileData newTileData = new FlipTileData
   33                 {
   34                     Title = “New Title”,
   35                     BackgroundImage = new Uri(@”Assets\Tiles\ChangedTileMedium.png”, UriKind.Relative),
   36                     BackTitle = “New Background Image”,
   37                     BackBackgroundImage = new Uri(textBoxBackBackgroundImage.Text, UriKind.Relative),
   38                     BackContent = “New Back Content”
   39                 };
   40                 // Update the application Tile
   41                 myTile.Update(newTileData);
   42             }
Run Code Online (Sandbox Code Playgroud)

这是初始化CycleTileData的文章中的代码片段示例:

   30   var cycleImages = new List<Uri>() { new Uri(@"Assets\Tiles\FlipCycleTileMedium.png", UriKind.Relative),
   31   new Uri(@”Assets\Tiles\CustomTileLarge.png”, UriKind.Relative) };
   32
   33                 CycleTileData newTileData = new CycleTileData
   34                 {
   35                     Title = “New Title”,
   36                     CycleImages = cycleImages,
   37                     Count = 5
   38                 };
Run Code Online (Sandbox Code Playgroud)