PRISM과 탐색 기능을 사용하여 애플리케이션을 만들었습니다. Context
에 현재 로그인 한 사용자가 포함 된이 앱에는 주 영역이 있습니다. 이 지역에서 저는 RegionManager.RequestNavigate
을 사용하여 뷰를 동적으로로드합니다. 뷰에는 별도 뷰 모델이있는 다른 뷰가 포함됩니다. 기본보기가 모든 응용 프로그램 시간에 존재한다는 것과보기에서 나가서 다시보기가 원래대로 동일하다는 점을 제외하고는 모두 괜찮습니다. 다시 작성하지 않아도됩니다. 내가 한 일 : 메인 뷰 모델에서 INavigationAware
을 구현했고 IsNavigationTarget
을 false로 설정했습니다. 뷰는 매번 생성되지만 "이미 중첩 된 영역 원인을 만들 수 있습니다"라는 예외가 있습니다. 그런 다음 기본보기 모델에서 KeepAlive
을 false로 설정하여 IRegionMemberLifetime
을 구현했습니다. 괜찮습니다. 그러나보기에서 탐색하고 다시 탐색 할 때 주요 지역의 Context
은 내용을 잃습니다.PRISM 지역 탐색에서 컨텍스트가 손실 됨
어떻게 해결할 수 있습니까?
감사
UPDATE : 나는 완전히 내 질문을 이해하기위한 샘플 PrismNavigationSample.zip 작업 준비
.
두 프로젝트 모두에서 이것을 시도하십시오. 첫 번째보기로 이동하고 슬라이더 값을 변경 한 다음 돌아와 첫 번째보기로 다시 이동하십시오. 또한 위 창의 컨텍스트 값을 참조하십시오.