我使用Prism 4.1來編寫一個組合應用程序,它使用TabControl
作爲在應用程序的主要模式之間切換的一種手段。我目前能夠通過簡單地導航到該視圖與TabControl
區域作爲目標來加載意見到TabControl
作爲單獨的標籤:Prism:惰性加載視圖到一個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立即實例化應用程序啓動時,而不是當一個視圖的選項卡被選中。有沒有辦法將Prism配置爲當其標籤被激活時才加載視圖?
我試過在單獨的模塊中定義視圖,並用InitializationMode.OnDemand
參數加載模塊,但這似乎沒有任何影響;我假設這是因爲RequestNavigate
方法足以激活模塊。
任何想法將不勝感激!
看起來像這是前面討論[這裏](http://stackoverflow.com/questions/4756657/lazy-loading-in-tabcontrols-mvvm) – bland