C# 动态更新WMAppManifest文件

C# 动态更新WMAppManifest文件,c#,silverlight,windows-phone-7,windows-phone-8,C#,Silverlight,Windows Phone 7,Windows Phone 8,在我的Windows Phone 8应用程序中,我想访问WMAppManifest文件。我还想动态更新循环磁贴图像路径。如何动态更新清单文件?请帮助我。转到您的Nuget软件包管理器并搜索“清单”,您将获得“访问WPAppManigfest…”软件包,该软件包允许访问清单文件 或者,在包管理器控制台中,使用此命令获取此包 PM> Install-Package WMAppManifest 无法通过编程方式修改WMAppManifest。您只能在Visual Studio中使用Visual

在我的Windows Phone 8应用程序中,我想访问WMAppManifest文件。我还想动态更新循环磁贴图像路径。如何动态更新清单文件?请帮助我。

转到您的Nuget软件包管理器并搜索“清单”,您将获得“访问WPAppManigfest…”软件包,该软件包允许访问清单文件

或者,在包管理器控制台中,使用此命令获取此包

PM> Install-Package WMAppManifest

无法通过编程方式修改WMAppManifest。您只能在Visual Studio中使用Visual editor或直接通过编辑XML对其进行编辑。
在运行时,您可以使用以下方法访问此文件,就像访问资源中的任何其他文件一样:

要在运行时创建或更新应用程序的现有或新磁贴,请使用以下指南:

要更新WP7/WP8上的主磁贴,无需更新WmAppManfiest。而是调用
ShellTile.ActiveTiles.First().Update(myTileData)
,使用与WmApManfiest中定义的tile类型匹配的tile数据。具有应用程序的所有磁贴。ShellTile.ActiveTIles集合中的第一个互动程序始终是应用程序的主互动程序,每个后续互动程序始终是辅助互动程序

您可以通过使用新数据对互动程序调用更新来更新互动程序。下面介绍如何设置和更新所有新的WP8瓷砖(翻转、图标和循环)。@

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

   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             }
下面是初始化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                 };
30 var cycleImages=new List(){new Uri(@“Assets\Tiles\FlipCycleTileMedium.png”,UriKind.Relative),
31新的Uri(@“Assets\Tiles\CustomTileLarge.png”,UriKind.Relative)};
32
33 CycleTileData newTileData=新CycleTileData
34                 {
35 Title=“新标题”,
36周期图像=周期图像,
37计数=5
38                 };