有没有办法使用Caliburn提供的导航服务和Windows Phone上的后退按钮。我有一个通用的应用程序,并使用Caliburn Micro beta 2.该应用程序有几个视图。我想使用后退按钮从一个屏幕导航到另一个屏幕,现在只有在每个页面中手动使用以下内容 -
Windows.Phone.UI.Input.HardwareButtons.BackPressed + = HardwareButtons_BackPressed;
此外,我使用Caliburn的导航服务从一个视图模型导航到另一个视图模型。即使我导航到另一个视图模型,Windows.Current.Content也不会从一个视图更改为另一个视图。当我使用以下代码时,这不会导致正确的后退导航 -
void HardwareButtons_BackPressed(object sender, Windows.Phone.UI.Input.BackPressedEventArgs e)
{
Frame rootFrame = Window.Current.Content as Frame;
if (rootFrame != null && rootFrame.CanGoBack)
{
rootFrame.GoBack();
e.Handled = true;
}
}
不确定是否有更优雅的方式来启用此功能。
由于