我想,以保持主网页(菜单)我MasterDetailPage左侧在任何时候,我不想导航以便将用户从MasterDetailPage路程,让用户按后退按钮取回。
我找一个传统的汉堡酒吧菜单,简单地改变详细页面,并保留主到位左侧。
我现在拥有的一切:
public partial class App : Application
{
public static NavigationPage NavPage { get; private set; }
private static RootPage RootPage;
public static bool MenuIsPresented
{
get
{
return RootPage.IsPresented;
}
set
{
RootPage.IsPresented = value;
}
}
public App()
{
InitializeComponent();
MenuPage menuPage = new MenuPage();
NavPage = new NavigationPage(new FirstPage());
RootPage = new RootPage();
RootPage.Master = menuPage;
RootPage.Detail = NavPage;
MainPage = RootPage;
}
...
}
而我的ViewModel命令
async void GoSecondPageAsync(object obj)
{
await App.NavPage.PushAsync(new SecondPage());
App.MenuIsPresented = false;
}
但是,这仅仅是创建在堆栈后退按钮回到MasterDetailPage之上的新的一页,而我要的是留在MasterDetailPage内。