public class NavigateCommand : ICommand
{
public bool CanExecute(object parameter)
{
return true;
}
//See http://blogs.msdn.com/b/trevor/archive/2008/08/14/c-warning-cs0067-the-event-event-is-never-used.aspx
public event EventHandler CanExecuteChanged
{
add { }
remove { }
}
/// <summary>
/// 执行跳转
/// </summary>
/// <param name="uri"></param>
public void Execute(object uri)
{
if (uri is String)
{
var root = App.RootFrame;
root.Navigate(new Uri(uri as String, UriKind.RelativeOrAbsolute));
}
}
/// <summary>
/// 清除后退项
/// </summary>
public void ClearBackStack()
{
var root = App.RootFrame;
try
{
while (root.RemoveBackEntry() != null)
{
//do nothing
}
}
catch (Exception e)
{
Debug.WriteLine("backstack cleared(后退项已经移除完)");
}
}
}windows phone 8 mvvmlight页面跳转类(NavigateCommand)
最新推荐文章于 2025-06-28 20:38:02 发布
本文详细介绍了如何使用C#编程语言实现跳转到指定URI和清除浏览器历史后退项的功能。通过自定义命令类,演示了事件处理机制以及如何在应用中灵活地进行页面导航与历史管理。

&spm=1001.2101.3001.5002&articleId=40046109&d=1&t=3&u=f03e8fa59a3248e0a150acdb1d536030)
2173

被折叠的 条评论
为什么被折叠?



