WPF:Frame NavigationService GoBack请求不起作用

时间:2013-11-05 14:53:41

标签: c# wpf wpf-4.0

在我的WPF应用程序中,我有一个带有几个按钮的Dialog窗口。对于每个按钮单击,我可以通过“Frame.Navigate(_page);”导航MainWindow中的页面。 。但从页面我无法返回我以前的对话窗口。我使用了“Frame.NavigationService.GoBack();”。但它不会回到Dialog窗口。它不会从MainWindow移出。 任何人都可以解决我的问题吗?

1 个答案:

答案 0 :(得分:2)

只有当navigationService.CanGoBack为true时才会返回。确保此属性的值。如果先前完成导航,您可以返回。这实际上与undo redo类似。 我还验证了以下代码片段对我来说很好,

NavigationService service;
public MainWindow()
{
    InitializeComponent();
    service = mainframe.NavigationService;
    service.Navigate("Page2.xaml");
}

private void Button_Click_1(object sender, RoutedEventArgs e)
{
    if (service.CanGoBack)
        service.GoBack();
}