Clear Back Stack Navigation Windows 10

2020-08-26 04:00发布

问题:

I want to Clear my Navigation Back Stack History ...

I tried to use this.NavigationService.RemoveBackEntry(); but It didn't work.

How could I do this in Windows 10?

回答1:

If you're in page code behind, have you tried doing:

this.Frame.BackStack.Clear();

or if you're somewhere else (like a ViewModel), have you tried:

var frame = Window.Current.Content as Frame;
frame.BackStack.Clear();


回答2:

In the code behind, you can try this:

protected override void OnNavigatedFrom(NavigationEventArgs e){
  if (this.GetType().HasRegionAttribute()){
        base.PopFromBackStackTo(typeof(LastViewModel));
  }    
  base.OnNavigatedFrom(e);
}