C# 更改默认平铺图像url

C# 更改默认平铺图像url,c#,windows-phone-7,windows-phone-8,windows-phone,windows-phone-8.1,C#,Windows Phone 7,Windows Phone 8,Windows Phone,Windows Phone 8.1,是否有任何方法可以在运行时更改WMAppManifest.xml中默认磁贴图像的URI 例如,我想为用户启用一个选项,以便在我的应用程序设置中选择磁贴图像。这不是问题,因为如果应用程序被锁定在开始位置,我可以用新图像更新主磁贴,但是如果应用程序未被锁定,并且用户希望再次锁定应用程序,则将使用默认图像,而这不是我想要的行为,我希望磁贴具有用户在设置中选择的图像。如果可能,如何实现这一点?我想出来了,我不知道ShellTile。ActiveTiles将始终包含默认的tile,无论应用程序是否固定,因

是否有任何方法可以在运行时更改WMAppManifest.xml中默认磁贴图像的URI


例如,我想为用户启用一个选项,以便在我的应用程序设置中选择磁贴图像。这不是问题,因为如果应用程序被锁定在开始位置,我可以用新图像更新主磁贴,但是如果应用程序未被锁定,并且用户希望再次锁定应用程序,则将使用默认图像,而这不是我想要的行为,我希望磁贴具有用户在设置中选择的图像。如果可能,如何实现这一点?

我想出来了,我不知道
ShellTile。ActiveTiles
将始终包含默认的tile,无论应用程序是否固定,因此我只是在设置项更改时更新了此tile:

private async void UpdateTile(bool isTransparent)
    {
        ShellTile defaultTile = ShellTile.ActiveTiles.FirstOrDefault();
        if (defaultTile != null)
        {
            string tileFolder = isTransparent ? "Transparent" : "Normal";

            defaultTile.Update(new FlipTileData()
            {
                SmallBackgroundImage = new Uri("appdata:/Assets/Tiles/" + tileFolder + "/Logo.scale-100.png"),
                BackgroundImage = new Uri("appdata:/Assets/Tiles/" + tileFolder + "/Logo.scale-180.png"),
                WideBackgroundImage = new Uri("appdata:/Assets/Tiles/" + tileFolder + "/WideLogo.scale-180.png")
            });
        }
    }

ShellTile.ActiveTiles[0]
始终是默认的互动程序,但集合也包含创建的所有辅助互动程序(如果有)