Bumbuska,
棱鏡將是一個偉大的方式爲你實現這個功能,這是很容易做到,一旦你瞭解校長。
我會做的方式是在你的主區的啓動事件添加事件偵聽器。當您在菜單中選擇您的項目時,您將觸發該事件。發生這種情況時,您的主區域將處理該事件,並清除主區域中的當前視圖。然後創建您想要使用的新視圖並添加它。
你的主要區域應該是這個樣子:
public void Initialize()
{
Events.PageEvents.ClickedEvent1 ce1 = this.eventAggregator.GetEvent<Events.PageEvents.ClickedEvent1>();
ce1.Subscribe(LoadView, ThreadOption.UIThread, true);
}
private void LoadView(Events.HomePageEvents.Clicked clicked1)
{
IRegion mainRegion = RegionManager.Regions["MainRegion"];
foreach (object view in new List<object>mainRegion.Views))
{
RegionManager.Regions["MainRegion"].Remove(view);
}
IModule firstModule = Container.Resolve<Modules.FirstModule>();
firstModuleModules.Initialize();
}
我希望點,你在正確的方向。如果您需要更多信息,請告訴我。
Thx。我已經有了這個樣本。我瞭解了這些概念,但我無法真正理解它並將它們放在我自己的應用程序中。但經過一些進一步的調查,這個樣本真的幫助了我 - 所以我現在走在了正確的軌道上。 – stiank81 2009-09-10 08:48:55
很高興我能幫到你。 – 2009-09-10 16:52:55
將此標記爲答案,因爲提供的示例代碼是導致解決方案的原因。謝謝! – stiank81 2009-09-10 19:47:36