【问题标题】:Prism + Wpf : Nested region not loaded by RegionManagerPrism + Wpf:RegionManager 未加载嵌套区域
【发布时间】:2015-11-05 17:03:51
【问题描述】:

我的外壳中有四 (4) 个区域:

  1. RibbonViewRegion : 注入标签

  2. RibbonTabRegion:注入控件组

  3. RibbonGroupRegion:注入一个控件(按钮、组合框...)

  4. ContentRegion : 主要内容区域

    <telerik:RadRibbonView prism:RegionManager.RegionName="{x:Static inf:RegionNames.RibbonViewRegion}" ApplicationName="Demo"> <telerik:RadRibbonTab Header="Principal" prism:RegionManager.RegionName="{x:Static inf:RegionNames.RibbonTabRegion}"> <telerik:RadRibbonGroup Header="Navigation" prism:RegionManager.RegionName="{x:Static inf:RegionNames.RibbonGroupRegion}"/> </telerik:RadRibbonTab> </telerik:RadRibbonView> <ContentControl Grid.Row="2" prism:RegionManager.RegionName="{x:Static inf:RegionNames.MainContentRegion}"/>

在模块 Initialize 方法中,当我像这样注入我的视图时:

RegionManager.Regions[RegionNames.RibbonGroupRegion].Add(Container.Resolve<MyView>());

发生异常:

“System.Collections.Generic.KeyNotFoundException”类型的异常发生在 Prism.Wpf.dll 中,但未在用户代码中处理 附加信息: 区域管理器不包含 RibbonGroupRegion 区域。

实际上:当我在这一行设置断点时,我注意到只加载了三个区域 - RibbonViewRegionRibbonTabRegionContentRegion

我的问题是:为什么我的RibbonGroupRegion 没有被RegionManager 加载?

注意:我实现了RadRibbonGroupRegionAdapter,它工作正常。

指导我,提前谢谢。

【问题讨论】:

    标签: wpf xaml telerik prism


    【解决方案1】:

    我解决了,我替换了这段代码:

    RegionManager.Regions[RegionNames.RibbonGroupRegion].Add(Container.Resolve<MyView>());
    

    通过这个:

    RegionManager.RegisterViewWithRegion(RegionNames.RibbonGroupRegion, () => Container.Resolve<MyView>());
    

    它的工作原理

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-01
      • 2013-10-31
      • 2012-07-25
      • 1970-01-01
      • 1970-01-01
      • 2017-11-01
      相关资源
      最近更新 更多