【问题标题】:Prism RegionManager.Region[""].GetView("string") always returns nullPrism RegionManager.Region[""].GetView("string") 总是返回 null
【发布时间】:2011-03-29 16:03:22
【问题描述】:

我的视图模型中有一个区域管理器的导入

[Import]
private IRegionManager _regionManager;

我希望能够获取视图并将其从区域中删除。

第一步,获取视图 即

_regionManager.Regions["MainRegion"].GetView("ViewName");

无论我做什么,总是返回 null。在使用视图注入添加视图时,我为视图指定了一个名称。当我尝试使用上述方法时,虽然它不起作用。我看过其他关于这个问题的帖子,但似乎没有一个解释如何解决它。

【问题讨论】:

  • 您是否在 IRegionManager 的 Views 属性中查看了该视图是否确实存在;或对此有何看法?
  • 就是这样-我可以看到那里有一些视图。我感兴趣的似乎是其中之一。我什至可以看到 Name 设置为我给它的值...

标签: wpf prism mef


【解决方案1】:

我已经整理好了。我的误解。

当我将视图添加到我正在使用的区域时

View myView = new myView();
myView.Name = "ABC";
_regionManager.Regions["MainRegion"].Add(myView);

当我尝试 GetView("ABC") 时这不起作用

我应该做的如下

_regionManager.Regions["MainRegion"].Add(myView, "asdf");

然后我可以打电话

_regionManager.Regions["MainRegion"].GetView("asdf");

【讨论】:

    猜你喜欢
    • 2019-08-11
    • 1970-01-01
    • 2016-04-27
    • 2015-06-29
    • 2014-04-30
    • 1970-01-01
    • 2014-03-04
    • 2016-11-02
    • 2014-05-06
    相关资源
    最近更新 更多