첫 번째 프리즘/XF 응용 프로그램을 만들었습니다. 기본 페이지는 MasterDetailPage입니다. 마스터 페이지 VM에서 세부 정보 페이지를 변경하기 위해 읽었습니다. MasterPageViewModel에서 NavigationService.NavigateAsync ("NewDetailPage")를 호출하면됩니다.프리즘 마스터 디테일에서 탐색하는 방법 Xamarin.Forms 응용 프로그램
이렇게하면 마스터 페이지가 변경되어 NewDetailPage가됩니다. MasterDatilPage를 유지하고 세부 정보 페이지를 변경하고 싶습니다.
다음은이 위대한 작품을 내 응용 프로그램 클래스
public partial class App : PrismApplication
{
public App(IPlatformInitializer initializer = null) : base(initializer) { }
protected override void OnInitialized()
{
InitializeComponent();
NavigationService.NavigateAsync("MenuPrincipalPage/ClubHousePage");
}
protected override void RegisterTypes()
{
Container.RegisterTypeForNavigation<MenuPrincipalPage>();
Container.RegisterTypeForNavigation<ClubHousePage>();
Container.RegisterTypeForNavigation<AProposPage>();
}
}
입니다. 응용 프로그램은 올바른 마스터 (MenuPrincipalPage)와 올바른 세부 정보 (ClubHousePage)로 시작됩니다.
I MenuPrincipalPageViewModel (마스터 페이지 VM), 몇 가지 시도했습니다. 먼저 세부 정보 페이지로 바로 이동하십시오.
public DelegateCommand AProposCommand { get; private set; }
private void APropos()
{
NavigationService.NavigateAsync("AProposPage",);
}
마스터 페이지가 변경되었습니다.
public DelegateCommand AProposCommand { get; private set; }
private void APropos()
{
NavigationService.NavigateAsync("MenuPrincipalPage/AProposPage");
}
MasterPage도 변경된다
나는 다음이 시도.public DelegateCommand AProposCommand { get; private set; }
private void APropos()
{
NavigationService.NavigateAsync("/MenuPrincipalPage/AProposPage");
}
을하지만 문제는 여기가되지 않습니다 :
이 코드는 작동? 전체 탐색 스택이 지워집니다.
내가 잘못 했습니까? 그것은 정확히 정상적으로처럼 작동하고 당신의 조언에 미리
많은 감사, 줄리앙
안녕하세요 Brian, NavigationPage를 추가했지만 문제가 여전히 있습니다. 사실, 제 질문은 : 왜 내가 /를 탐색 URL의 시작 부분에 넣어야합니까? 다음 코드가 작동합니다. NavigationService.NavigateAsync ("/ MenuPrincipalPage/ContenuPage/AProposPage"); 해당 사항 없음 : NavigationService.NavigateAsync ("MenuPrincipalPage/ContenuPage/AProposPage"); 유일한 차이점은 처음에 /입니다. –
처음에 "/"를 삽입하면 탐색 스택이 재설정됩니다. 네가 뭔가 잘못한 것처럼 들린다. 마스터에서 탐색하는 경우 "NavigationPage/Target"을 사용하고 경로에 마스터 세부 정보 페이지를 포함시키지 마십시오. 이 샘플을 확인하십시오 : https://github.com/PrismLibrary/Prism-Samples-Forms/tree/master/HamburgerMenu –
안녕하세요 Brian, NavigationPage/Target을 사용하면 ViewA \ ViewB \ ViewC에 뒤로 버튼이 표시되지 않습니다. 위에있는 햄버거 메뉴 만 – kaycee