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

时间:2015-12-04 09:17:46

标签: navigation xamarin.forms

在我的app结构中如下所示, 列表页面 - >详情页面 - >编辑页面

在编辑页面中有一个按钮“删除”,用于从数据库中删除数据。

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

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

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

4 个答案:

答案 0 :(得分: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 ();

答案 1 :(得分:5)

Navigation.PopToRootAsync ();   

将您发回主页..

答案 2 :(得分:3)

这将是因为您的详细信息页面正在尝试加载OnAppearing或其他事件中不再存在的记录。因此,如果记录为空,则只将条件放在顶部,以便不加载页面。

答案 3 :(得分:0)

你可以这样做:

var _navigation = Application.Current.MainPage.Navigation;
_navigation.PopToRootAsync ();  

但是如果你需要导航到根页面,你可以使用它:

from hdfs import InsecureClient
client = InsecureClient(hostname, user)

get_file = []
for dir_,sub_dir, files in client.walk():
    if files:
        get_file.append(files)