C# 通过代码在Xamarin中切换/加载新的detailpage

C# 通过代码在Xamarin中切换/加载新的detailpage,c#,xaml,xamarin,C#,Xaml,Xamarin,我如何像您那样通过代码在Masterdetailpage的侧菜单中加载/切换页面 如果单击侧菜单上的页面名称,您将转到该页面,同时将菜单按钮保留在新页面上。如何通过代码实现这一点 MainPage.xaml是主页 菜单按钮不在左上角,但我希望它在那里。您需要使用详细信息页面来完成此操作&您的当前页面应继承自MasterDetailPage 如果您确实喜欢以上详细信息=新建。。它不会显示左上角的后退按钮箭头。 如果您想在Actionbar中使用后退箭头,请执行以下操作 Detail.Navigat

我如何像您那样通过代码在Masterdetailpage的侧菜单中加载/切换页面

如果单击侧菜单上的页面名称,您将转到该页面,同时将菜单按钮保留在新页面上。如何通过代码实现这一点

MainPage.xaml是主页

菜单按钮不在左上角,但我希望它在那里。

您需要使用详细信息页面来完成此操作&您的当前页面应继承自MasterDetailPage

如果您确实喜欢以上详细信息=新建。。它不会显示左上角的后退按钮箭头。 如果您想在Actionbar中使用后退箭头,请执行以下操作

Detail.Navigation.PushAsync(new HomePage());
private void SlaapPage(object sender, EventArgs e)
{
    //this.Navigation.PushAsync(new SlaapPage());// not showing back button
    //(App.Current.MainPage as MasterDetailPage).Detail=new NavigationPage(new SlaapPage()); //showing full screen page
    (App.Current.MainPage as MasterDetailPage).Detail.Navigation.PushAsync(new SlaapPage()); //working like google play store app, In SlaapPage page SetHasNavigationBar should be false
}
如果你想在其他页面上做,就这样做

public void SlaapClicked()
{ 
 Navigation.PushAsync(new SlaapPage());
} 
在SlaapPage上隐藏导航栏

如果要从其他选项卡页面移动,请执行以下操作

Detail.Navigation.PushAsync(new HomePage());
private void SlaapPage(object sender, EventArgs e)
{
    //this.Navigation.PushAsync(new SlaapPage());// not showing back button
    //(App.Current.MainPage as MasterDetailPage).Detail=new NavigationPage(new SlaapPage()); //showing full screen page
    (App.Current.MainPage as MasterDetailPage).Detail.Navigation.PushAsync(new SlaapPage()); //working like google play store app, In SlaapPage page SetHasNavigationBar should be false
}

谢谢你的回复,但是我如何从另一个页面做到这一点呢?我有一个具有以下功能的按钮void Slaap_clicked object sender,EventArgs e{MainPage MainPage=new MainPage;MainPage.slaaclicked;}位于ItemsPage.cs ItemsPage=homepage。在MainPage.cs中,我有一段代码public void slaapplicked{Detail.Navigation.PushAsyncnew SlaapPage;}但是,这不起作用。如果您想从其他页面推送页面,您应该使用Navigation.PushAsync,因为您已经打开了详细信息容器,不需要使用其他页面的详细信息。将my edits.App.Current.MainPage作为MasterDetailPage检查。Detail=new NavigationPagenew SlaapPage;做了我想做的。当我点击一个按钮时,它会显示slaap页面,菜单按钮在左上角。谢谢
public void SlaapClicked()
{ 
 Navigation.PushAsync(new SlaapPage());
} 
public SlaapPage()
{
    InitializeComponent();
    NavigationPage.SetHasNavigationBar(this, false);
}
private void SlaapPage(object sender, EventArgs e)
{
    //this.Navigation.PushAsync(new SlaapPage());// not showing back button
    //(App.Current.MainPage as MasterDetailPage).Detail=new NavigationPage(new SlaapPage()); //showing full screen page
    (App.Current.MainPage as MasterDetailPage).Detail.Navigation.PushAsync(new SlaapPage()); //working like google play store app, In SlaapPage page SetHasNavigationBar should be false
}