Im Использование пользовательской навигации ViewModelFirst. Ссылка навигации здесь https://docs.microsoft.com/en-us/xamarin/xamarin-forms/enterprise-application-patterns/navigation
Я реализовал эту навигацию с ViewModel, работающим нормально. Но с MasterDetailPage. Страница не становится дочерней от MasterPage. Как я должен ориентироваться, чтобы представления становились дочерними для MasterPage (страницы Parrent).
Вот как я пытаюсь
private async Task InternalNavigateToAsync(Type viewModelType, object parameter)
{
try
{
Page page = CreatePage(viewModelType, parameter);
if (page is MasterMainPage)
{
Application.Current.MainPage = new CustomNavigationPage(page);
}
else
{
var navigationPage = Application.Current.MainPage as CustomNavigationPage;
if (navigationPage != null)
{
await (App.Current.MainPage as MasterDetailPage).Detail.Navigation.PushAsync(page);
//var masterMainPage = Startup.ServiceProvider?.GetService<MasterMainPage>();
//masterMainPage.Detail = page;
// await navigationPage.PushAsync(page);
}
else
{
Application.Current.MainPage = new CustomNavigationPage(page);
}
}
await (page.BindingContext as ViewModelBase).OnAppearing(parameter);
}
catch (Exception ex)
{
throw;
}
}
В коде, который я устанавливаю, MasterDetailPage как Root и с использованием навигации. Я не понимаю, как мне добавить разные представления к потомку MasterDetailPage.