代码之家  ›  专栏  ›  技术社区  ›  Drake

系统InvalidOperationException:页面不能已有父级

  •  3
  • Drake  · 技术社区  · 6 年前

    在我的Xamarin。表单应用程序我有以下代码:

    while (this.Navigation.ModalStack.Count > 0)
    {
        await this.Navigation.PopModalAsync();
    }
    
    await Navigation.PushModalAsync(App.MyMasterDetailPage.Value);
    

    在最后一行,我得到了错误

    系统InvalidOperationException:页面不能已有父级。

    怎么可能 MyMasterDetailPage 当我已经把所有的东西都从 ModalStack ?我只在 莫达尔斯塔克

    1 回复  |  直到 5 年前
        1
  •  5
  •   EvZ    6 年前

    MasterDetailPage设计为根页面,并将其用作 其他页面类型中的子页面可能会导致意外和 行为不一致。此外,建议主人 MasterDetailPage的页面应始终是ContentPage实例, 并且详细信息页面只能填充TabbedPage, NavigationPage和ContentPage实例。这将有助于确保 跨所有平台的一致用户体验。

    资料来源: official documentation