protected virtual Type GetPageType(MvxViewModelRequest request) { if (_viewFinder == null) { _viewFinder = Mvx.Resolve <IMvxViewsContainer> (); } try { return(_viewFinder.GetViewType(request.ViewModelType)); } catch (KeyNotFoundException) { var pageName = GetPageName(request); return(request.ViewModelType.GetTypeInfo().Assembly.CreatableTypes() .FirstOrDefault(t => t.Name == pageName)); } }
protected override IMvxView Convert(Type viewModelType, Type targetType, object parameter, CultureInfo culture) { Type viewType = ViewsContainer.GetViewType(viewModelType); return(viewType != null ? (IMvxView)Activator.CreateInstance(viewType) : null); }