Xamarin MasterDetail页面更新到新页面

时间:2019-03-01 20:17:57

标签: c# xamarin xamarin.forms

在我的MainPage中,我有一个MasterDetailPage.Detail,其中显示了默认主页。在主页上,我有三个按钮,我想根据单击了什么按钮的方式将变量传递给搜索页面。当我单击按钮时,出现空白页。

  

这是更新MasterDetailPage.Detail的正确方法吗?

MainPage.xaml

<MasterDetailPage.Detail>
    <NavigationPage>
        <x:Arguments>
            <pages:HomePage />
        </x:Arguments>
    </NavigationPage>
</MasterDetailPage.Detail>

HomePage.xaml.cs

private void ButtonA_Clicked(object sender, System.EventArgs e)
{
    string key = "A";
    App.Current.MainPage = new MainPage { Detail = new NavigationPage(new SearchPage()) };
}

2 个答案:

答案 0 :(得分:3)

您已经在NavigationPage内部加载了Detail,因此您应该使用它来导航到下一页

private void ButtonA_Clicked(object sender, System.EventArgs e)
{
    string key = "A";
    Navigation.PushAsync(new SearchPage(key));
}

答案 1 :(得分:1)

https://github.com/bpjohannessen/XMD1

这使用MVVM方法。在此示例中,只有一个命令传递了CommandParameter。