protected virtual void DoNavigate(ControllerInvokerResult controllerResult) { var route = controllerResult.Route; var result = controllerResult.Result; Log.Information("Doing navigate to route {route}", route); var pageResult = result as IPageActionResult; if (pageResult != null) { _presentationBus.PublishAsync(new PageNavigationRequest(route, new PageNavigationRequestEventArgs(pageResult.PageType, pageResult.Parameter))); return; } var viewModelResult = result as IViewModelActionResult; if (viewModelResult != null) { _presentationBus.PublishAsync(new ViewModelNavigationRequest(route, new ViewModelNavigationRequestEventArgs( viewModelResult.ViewModelInstance))); } }
protected override void DoNavigate(ControllerInvokerResult controllerResult) { var result = controllerResult.Result; var settingsResult = result as ISettingsPageActionResult; if (settingsResult != null) { DoSettingsPopup(settingsResult); return; } base.DoNavigate(controllerResult); }