클릭 한 번으로 EventAggregator를 사용하여 이벤트를 게시하는 메뉴 컨트롤을 사용하여 내 응용 프로그램을 통해 탐색 기능을 구현했습니다. 아래에 표시된 것과 같습니다.프리즘 내비게이션 컨트롤에서 뷰를 동적으로로드하는 가장 좋은 방법은 무엇입니까
내 응용 프로그램에있는 대부분의 모듈은이 이벤트의 구독자입니다.
private void LoadRequestedView(MenuModel menuItem)
{
try
{
IDashboardViewModel viewModel = this.container.Resolve(Type.GetType(menuItem.PresenterClass)) as IDashboardViewModel;
this.regionManager.Regions["ViewRegion"].Add(viewModel.View);
this.regionManager.Regions["ViewRegion"].Activate(viewModel.View);
this.eventAggregator.GetEvent<ViewNotificationEvent>().Publish(menuItem.Description);
}
catch (ResolutionFailedException) { }
}
방법이 구현 평가 않은 : 그들은보기에
this.eventAggregator.GetEvent<ViewRequestedEvent>()
.Subscribe(LoadViewRequest, ThreadOption.UIThread, true, i => i.Module == "Dashboard");
요청은 다음과 같이 처리 모듈과 관련된 이벤트 만 구독 필터를 사용? 그것이 짜증이 난다고 생각한다면, 그것을 향상 시키거나 더 나은 대안을 제안하도록 도와주세요.