シェルで定義されたネストされた領域を持つメニュー (Telerik RadMenu) があります。私のモジュールでは、モジュール メニューまたはツールバー項目をこれらの領域に登録します。ルート リージョンではすべて正常に動作しますが、メニューのファイル リージョンなどの子リージョンに何かを追加しようとすると、「例外メッセージ: リージョン マネージャーに FileMenuRegion リージョンが含まれていません」というエラーが表示されます。
ただし、このコードを変更すると、言ったように
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>