2012-04-12 52 views
0

我有一個ContentControl託管一個屬性內的區域。問題是,棱鏡沒有在這個ContentControl上找到區域管理器。如何定義棱鏡屬性中的區域

<MyView> 
    <MyView.Menu> 
     <MyMenu> 
     <ContentControl prism:RegionManager.RegionName="AppBarRegion" /> 
     </MyMenu> 
    </MyView.Menu> 
</MyView> 

有沒有辦法解決這個問題?

感謝您的幫助, ENY

回答

0

你有沒有添加到您的區域有什麼看法?如果是這樣,我從你的問題收集,你只是沒有看到他們,當你在你的團結引導程序運行應用程序,以及

protected override void InitializeModules() 
    { 
     base.InitializeModules(); 

     var manager = Container.Resolve<IRegionManager>(); 
     var region = manager.Regions["AppBarRegion"]; 

     /*i am assuming you have added some views to your region :) */ 
     region.Activate (region.Views.FirstOrDefault()); 
    } 

下面是一個示例鏈接棱鏡應用程序檢查表:

http://www.codeproject.com/Articles/165376/A-Prism-4-Application-Checklist

+0

嗨,沒有區域經理不會添加區域,因爲它處理附加的依賴項屬性時沒有找到父區域管理器。 您的代碼會產生一個異常,因爲沒有可用的AppBarRegion。 – Enyra 2012-04-17 13:00:57

+0

但您在xaml中創建它: 2012-04-17 13:25:57

+0

是的,在父類型的屬性內而不在內容屬性內,因此父項未在「MyMenu」中設置: )棱鏡迭代通過元素的父母,直到它找到區域管理器,或者直到它找不到任何父母爲止,這發生在我的情況。 – Enyra 2012-04-17 14:57:23