从导航堆栈中删除页面 - xamarin.forms

Het*_*tal 4 navigation xamarin.forms

在我的应用程序结构如下,列表页面 - >详细信息页面 - >编辑页面

在编辑页面中有一个按钮"删除",它从数据库中删除数据.

现在我的问题是将用户从编辑页面导航到列表页面,

我正在使用Navigation.popasync 2次,但在详细信息页面上我收到来自服务的错误,没有这样的记录存在.

如何正确地将用户从"编辑"页面导航到列表页面?

Het*_*tal 12

// Remove page before Edit Page
this.Navigation.RemovePage (this.Navigation.NavigationStack [this.Navigation.NavigationStack.Count - 2]);
// This PopAsync will now go to List Page
this.Navigation.PopAsync ();
Run Code Online (Sandbox Code Playgroud)

  • 因为它可以帮助解释发生了什么?你知道,我们通常写评论的原因相同! (5认同)

小智 6

你可以这样做:

var _navigation = Application.Current.MainPage.Navigation; 
var _lastPage = _navigation.NavigationStack.LastOrDefault(); 
//Remove last page
_navigation.RemovePage(_lastPage);
//Go back 
_navigation.PopAsync();
Run Code Online (Sandbox Code Playgroud)

但如果您需要导航到根页面,您可以使用以下命令:

var _navigation = Application.Current.MainPage.Navigation;
_navigation.PopToRootAsync ();  
Run Code Online (Sandbox Code Playgroud)


Mr.*_*çak 5

Navigation.PopToRootAsync ();   
Run Code Online (Sandbox Code Playgroud)

将您带回到您的主页。