改变MasterDetailPage.Master?

Change MasterDetailPage.Master?

我有一个 MasterDetailPage,我需要在不破坏 Detail 页面的情况下动态替换 Master 页面。

public App()
{
    InitializeComponent();

    MainPage = new MasterDetailPage()
    {
        Master = new Page1(),
        Detail = new NavigationPage( new PageXXX() )
    };
}

尝试了直接的方法,看起来很直观:

private void onTestButtonClicked( object sender, EventArgs e )
        {

            ( (MasterDetailPage)( Application.Current ).MainPage ).Master =  new Page2();

        }

但它抛出一个错误,由于某种原因我无法追溯到源头:

Xamarin.Forms.Xaml.XamlParseException: 'Position 13:17. StaticResource not found for key itemTemplate'

OP 说评论解决了问题。新页面上的错别字。