2
我有一個菜單(Telerik RadMenu),它具有在Shell中定義的嵌套區域。在我的模塊中,我將使用這些區域註冊模塊菜單或工具欄項目。一切工作正常的根區域,但當我嘗試並添加一些子區域,如菜單上的文件區域,我收到錯誤「異常消息是:區域管理器不包含FileMenuRegion區域。MVVM Prism嵌套區域找不到子區域
但是就像我說的,如果我這個代碼
regionManager.Regions[RegionNames.FileMenuRegion].Add(menuItem);
改變這種
regionManager.Regions[RegionNames.MainMenuRegion].Add(menuItem);
一切工作正常。以下是我的菜單中的XAML,以便您可以查看區域名稱以及它們的構建方式。任何幫助將不勝感激,因爲這是令人困惑,讓我瘋狂。
菜單
<telerikNavigation:RadMenu x:Name="menuMain" DockPanel.Dock="Top" prismrgn:RegionManager.RegionName="{x:Static i:RegionNames.MainMenuRegion}" telerik:StyleManager.Theme="{Binding Source={StaticResource settings}, Path=Default.CurrentTheme}">
<telerikNavigation:RadMenuItem Header="{x:Static p:Resources.File}" prismrgn:RegionManager.RegionName="{x:Static i:RegionNames.FileMenuRegion}">
<telerikNavigation:RadMenuItem Header="{x:Static p:Resources.Exit}" Command="{Binding ExitCommand}">
<telerikNavigation:RadMenuItem.Icon>
<Image Source="../Resources/Close.png" Stretch="None" />
</telerikNavigation:RadMenuItem.Icon>
</telerikNavigation:RadMenuItem>
</telerikNavigation:RadMenuItem>
</telerikNavigation:RadMenu>
所以有嵌套區域的方式嗎?請查看[this](http://compositewpf.codeplex.com/discussions/249769#post725985)評論以瞭解我的確切問題 - 請注意,這是該主題中的第3篇文章。謝謝! – Shimmy 2012-01-16 21:09:24
區域只是佈局構建塊。嵌套過程意味着您實際上需要更換可更換區域內的可更換區域。解決方案將像往常一樣在頂級區域註冊視圖,每個視圖都包含其他區域定義。用戶控件可以有區域,通常只需插入未知來源提供的狀態信息。 – 2012-01-17 11:21:38
我找到了我的答案。張貼[這裏](http://compositewpf.codeplex.com/discussions/249769#post726075)。 – Shimmy 2012-01-17 13:49:56