如何从我的应用程序中直接进入Windows Phone开始屏幕
本文关键字:Windows Phone 屏幕 开始 我的 应用程序 | 更新日期: 2023-09-27 18:02:45
我的应用程序有创建许多次要磁贴的选项。当用户试图固定现有的磁贴时,应用程序会要求用户先进入开始屏幕删除磁贴。
是否有一种方式以编程方式导航到WP开始屏幕从我的应用程序?
我知道用户可以点击开始按钮或后退按钮。但我想检测那个导航是否设置了某些标志。如果应用程序能帮助用户自动导航,那对用户来说就方便多了。
正如你所说的"当用户尝试pin现有的tile"意味着你想要更新现有的tile。使用代码来更新现有的tile。
public static void UpdateAppTile(string navigationUri)
{
var tile = ShellTile.ActiveTiles.FirstOrDefault(x => x.NavigationUri.ToString().Contains(navigationUri));
if (tile != null)
{
var tileData = new FlipTileData
{
SmallBackgroundImage = new Uri("/Assets/Tiles/small.png", UriKind.Relative),
BackgroundImage = new Uri("/Assets/Tiles/medium.png", UriKind.Relative),
WideBackgroundImage = new Uri("/Assets/Tiles/wide.png", UriKind.Relative),
// other properties
};
tile.Update(tileData);
}
}
和用于删除平铺
public static void DeleteAppTile(string navigationUri)
{
var tile = ShellTile.ActiveTiles.FirstOrDefault(x => x.NavigationUri.ToString().Contains(navigationUri));
if (tile != null)
{
tileToFind.Delete();
}
}
从用户体验的角度来看,您应该已经通过禁用(或添加'unpin From start'选项)相应的磁贴来避免这种情况,如果它已经固定为开始。
public static bool CheckIfTileExists(string tileUri)
{
ShellTile shellTile = ShellTile.ActiveTiles.FirstOrDefault(
tile => tile.NavigationUri.ToString().Contains(tileUri));
if (shellTile == null)
return false;
return true;
}