Я боролся некоторое время, пытаясь заставить это работать.По сути, у меня есть приложение Silverlight, использующее комбинацию MVVM / PRISM / Unity.
Моя оболочка состоит из двух областей RootContent
и RootMenu
.Мои RegionManager.Regions
могут видеть эти две области просто отлично, и приложение работает правильно.
Проблема начинается, когда один из моих просмотров внутри RootContent
открывает ChildWindow
, он содержит больше двух областей, следующим образом:
<ContentControl Region:RegionManager.RegionName="WOFSCustomerLookup" />
<ContentControl Region:RegionManager.RegionName="WOFSCustomerView" />
ViewModel этого представления, который имеет этот XAML выше, даже наследуя и правильно разрешая, коллекция IRegionManager.Regions
не содержит этих двух новых областей выше, только RootContent и RootMenu.
Дополнительная информация
Вот как называется мое ChildWindow (оно вызывает "View"):
ChildWindow editor = this.container.Resolve<WorkOrderFieldServiceEditor>();
editor.show();
И этоэто конструктор моей ViewModel:
public WorkOrderFieldServiceViewModel(IUnityContainer container, IRegionManager regionManager)
{
this.container = container;
this.regionManager = regionManager;
// Still have just the two Root regions:
// this.regionManager.Regions[]
}
Я что-то пропустил?