프리즘 4.1을 사용하여 응용 프로그램의 기본 모드를 전환하는 수단으로 TabControl
을 사용하는 복합 응용 프로그램을 작성합니다. 나는 현재 단순히 대상으로 TabControl
지역으로보기로 이동하여 TabControl
별도의 탭으로 뷰를로드 할 수 있어요 :에서프리즘 :보기를 탭 콘트롤로 지연로드
을 내 Shell.xaml
:
<Window>
<Grid>
<TabControl prism:RegionManager.RegionName="TabRegion" />
</Grid>
</Window>
그리고 내 Bootstrapper.cs
에서
InitializeShell()
방법
regionManager.Regions["TabRegion"].RequestNavigate("FirstTabView");
regionManager.Regions["TabRegion"].RequestNavigate("SecondTabView");
regionManager.Regions["TabRegion"].RequestNavigate("ThirdTabView");
하지만, 뷰 및 (더 중요한)는 각 ViewModels 즉시 인스턴스화되면 오히려보기보다는 애플리케이션이 시작될 의 탭이 선택되었습니다. 탭이 활성화되었을 때만 뷰를로드하도록 프리즘을 구성하는 방법이 있습니까?
뷰를 별도의 모듈로 정의하고 InitializationMode.OnDemand
매개 변수를 사용하여 모듈을로드하려고 시도했지만 아무런 효과가없는 것 같습니다. 이 방법은 RequestNavigate
메서드로 모듈을 활성화하기에 충분하기 때문입니다.
어떤 아이디어라도 높이 평가할 수 있습니다!
이것은 이전에 논의 된 것처럼 보입니다. (http://stackoverflow.com/questions/4756657/lazy-loading-in-tabcontrols-mvvm) – bland