如何使用PRISM获取区域中的当前活动视图?

Ehs*_*adi 15 c# wpf prism mvvm

我知道我可以在以下地区获得所有已注册的观看次数:

var vs = mRegionManager.Regions[RegionNames.MainRegionStatic].Views.ToList();
Run Code Online (Sandbox Code Playgroud)

我可以看到有以下代码:

mRegionManager.Regions[RegionNames.MainRegionStatic].ActiveViews
Run Code Online (Sandbox Code Playgroud)

这是一个Active View列表,但我将我的区域附加到ContentControl,它始终只有一个ActiveView.我误解了或有没有办法获得单一的活动视图?

Nav*_*ani 12

var singleView = regionManager.Regions["MyRegion"].ActiveViews.FirstOrDefault();

  • 因为[SingleActiveRegion](http://msdn.microsoft.com/en-us/library/microsoft.practices.composite.presentation.regions.singleactiveregion.aspx)继承了Region (2认同)

小智 5

var singleView = regionManager.Regions["MyRegion"].ActiveViews.FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

这是不正确的,因为它只会带来首先被激活的视图.不是当前活动/可见的视图.

但是找不到直接的解决方案,这不涉及View或ViewModel上的自定义实现.