public TViewModel MapToViewModel(InventoryMovement model) { var viewModel = new TViewModel() { No = model.No, Date = model.Date, ReferenceNo = model.ReferenceNo, ReferenceType = model.ReferenceType, ProductId = model.ProductId, ProductCode = model.ProductCode, ProductName = model.ProductName, UomId = model.UomId, UomUnit = model.UomUnit, StorageId = model.StorageId, StorageCode = model.StorageCode, StorageName = model.StorageName, StockPlanning = model.StockPlanning, Before = model.Before, Quantity = model.Quantity, After = model.After, Remark = model.Remark, Type = model.Type, LastModifiedUtc = model.LastModifiedUtc }; PropertyCopier <InventoryMovement, TViewModel> .Copy(model, viewModel); return(viewModel); }
public void ChangePage <TViewModel>() where TViewModel : IViewModel, new() { // If we are already on the same page as the button click, we don't change anything if (AppWindow.ViewModel.CurrentViewModel == null || AppWindow.ViewModel.CurrentViewModel.GetType() != typeof(TViewModel)) { foreach (IViewModel viewModel in ViewModels) { // If an instance of the viewmodel already exists, we switch to that one if (viewModel.GetType() == typeof(TViewModel)) { AppWindow.ViewModel.CurrentViewModel = viewModel; return; } } // Else, we create a new instance of the viewmodel TViewModel newViewModel; if (_container != null) { newViewModel = _container.Resolve <TViewModel>(); } else { newViewModel = new TViewModel(); } AppWindow.ViewModel.CurrentViewModel = newViewModel; ViewModels.Add(newViewModel); } }
public VVMContainer(TView View, TViewModel ViewModel) { this.View = View; this.ViewModel = ViewModel; this.ViewHashCode = View.GetHashCode(); this.ViewModelHashCode = ViewModel.GetHashCode(); }
public static TViewModel GetViewModel <TViewModel>() where TViewModel : class, IViewModel { var viewModelType = typeof(TViewModel); TViewModel viewModel = default(TViewModel); lock (m_creationSyncRoot) { if (m_viewModelInstanceCache.ContainsKey(viewModelType)) { viewModel = m_viewModelInstanceCache[viewModelType] as TViewModel; } else { try { viewModel = Activator.CreateInstance(viewModelType) as TViewModel; m_viewModelInstanceCache.Add(viewModelType, viewModel); } catch (Exception ex) { throw new Exception("Unable to create ViewModel: " + viewModelType.Name, ex); } } } return(viewModel); }
public InventoryMovement MapToModel(TViewModel viewModel) { var model = new InventoryMovement() { No = viewModel.No, Date = viewModel.Date, ReferenceNo = viewModel.ReferenceNo, ReferenceType = viewModel.ReferenceType, ProductId = viewModel.ProductId, ProductCode = viewModel.ProductCode, ProductName = viewModel.ProductName, UomId = viewModel.UomId, UomUnit = viewModel.UomUnit, StorageId = viewModel.StorageId, StorageCode = viewModel.StorageCode, StorageName = viewModel.StorageName, StockPlanning = viewModel.StockPlanning, Before = viewModel.Before, Quantity = viewModel.Quantity, After = viewModel.After, Remark = viewModel.Remark, Type = viewModel.Type }; PropertyCopier <TViewModel, InventoryMovement> .Copy(viewModel, model); return(model); }
this TView view, TViewModel viewModel, Expression <Func <TViewModel, TVMProp> > vmProperty, Expression <Func <TView, TVProp> > viewProperty, object conversionHint = null, IBindingTypeConverter vmToViewConverterOverride = null, IBindingTypeConverter viewToVmConverterOverride = null)
public TViewModel ToViewModel <TViewModel>() where TViewModel : class, new() { var vm = new TViewModel(); vm = Helper.AutoMapper.Map <TViewModel>(this); return(vm); }
public TViewModel ShowWindow <TViewModel>() where TViewModel : IViewModel { TViewModel viewModel = _unityContainer.Resolve <TViewModel>(); _windowsDisplayRegistry.ShowWindow(viewModel); return(viewModel); }
/// <summary> /// ウィンドウを取得します。 /// </summary> /// <typeparam name="TWindow">ウィンドウの型</typeparam> /// <typeparam name="TViewModel">ViewModelの型</typeparam> /// <returns>ウィンドウのインスタンス</returns> private TWindow GetWindow <TWindow, TViewModel>() where TWindow : Window, new() where TViewModel : WindowViewModel, new() { var windowName = typeof(TWindow).Name; if (!this.container.ContainsKey(windowName)) { var viewModel = new TViewModel(); var window = new TWindow() { DataContext = viewModel }; Observable.FromEventPattern(window, nameof(window.Closed)) .Subscribe(x => this.container.Remove(windowName)) .AddTo(this); Observable.FromEventPattern(window, nameof(window.ContentRendered)) .Subscribe(x => (x.Sender as TWindow).Activate()) .AddTo(this); Observable.FromEventPattern(window, nameof(window.Activated)) .Select(x => (x.Sender as TWindow).DataContext as TViewModel) .Where(x => x.IsInitialized) .Subscribe(_ => viewModel.Initialize()) .AddTo(this); this.container.Add(windowName, window); } return(this.container[windowName] as TWindow); }
this TView view, TViewModel viewModel, Expression <Func <TViewModel, TVMProp> > vmProperty, Expression <Func <TView, TVProp> > viewProperty, IObservable <TDontCare> signalViewUpdate, Func <TVMProp, TVProp> vmToViewConverter, Func <TVProp, TVMProp> viewToVmConverter)
public async Task <TViewModel> GetCurrentHeroHealthViewModel <TViewModel>() { Health health = await this.GetHealth(); TViewModel viewModel = this.mapper.Map <TViewModel>(health); return(viewModel); }
public async Task <TViewModel> GetCurrentHeroChronometerViewModel <TViewModel>() { Chronometer chronometer = await this.GetChronometer(); TViewModel viewModel = this.mapper.Map <TViewModel>(chronometer); return(viewModel); }
public async Task <TViewModel> GetCurrentHeroResourcesViewModel <TViewModel>() { ResourcePouch resourcePouch = await this.GetResourcePouch(); TViewModel viewModel = this.mapper.Map <TViewModel>(resourcePouch); return(viewModel); }
private static Page GetPageFor <TViewModel>() where TViewModel : MvvmNanoViewModel { TViewModel viewModel = MvvmNanoIoC.Resolve <TViewModel>(); viewModel.Initialize(); return(ResolvePage(viewModel)); }
protected TViewModel CreateViewModel <TViewModel>() where TViewModel : ViewModelBase, new() { var viewModel = new TViewModel(); viewModel.PropertyChanged += (sender, args) => savedChangedPropertyNames.Add(args.PropertyName); return(viewModel); }
protected TViewModel GetViewModel <TViewModel>() where TViewModel : BaseCyanielViewModel, new() { var viewModel = new TViewModel(); viewModel.CurrentUser = CurrentUser; return(viewModel); }
public async Task <TViewModel> GetCurrentHeroStatisticsViewModel <TViewModel>() { Statistics statistics = await this.GetStatistcs(); TViewModel viewModel = this.mapper.Map <TViewModel>(statistics); return(viewModel); }
public TViewModel InvokeQuery <TViewModel>() where TViewModel : new() { var viewmodel = new TViewModel(); var handler = _objectResolver.Resolve <IQueryHandler <TViewModel> >(); handler.Handle(viewmodel); return(viewmodel); }
public async Task <TViewModel> GetOpponentsViewModel <TViewModel>() { Hero[] opponents = await this.GetOpponents(); TViewModel viewModel = this.mapper.Map <TViewModel>(opponents); return(viewModel); }
this TView view, TViewModel viewModel, Expression <Func <TViewModel, TVMProp> > vmProperty, Expression <Func <TView, TVProp> > viewProperty, IObservable <TDontCare> signalViewUpdate, object conversionHint = null, IBindingTypeConverter vmToViewConverterOverride = null, IBindingTypeConverter viewToVmConverterOverride = null)
public Page Resolve <TViewModel>() where TViewModel : BaseVM { TViewModel viewModel = _componentContext.Resolve <TViewModel>(); Page view = GetPage <TViewModel>(); view.BindingContext = viewModel; return(view); }
public Page Resolve <TViewModel>() where TViewModel : class, IViewModel { TViewModel viewModel = _componentContext.Resolve <TViewModel>(); var viewType = _map[typeof(TViewModel)]; var view = _componentContext.Resolve(viewType) as Page; view.BindingContext = viewModel; return(view); }
public async Task <TViewModel> GetCurrentHeroCharacteristicsViewModel <TViewModel>() { Hero hero = await this.heroService.GetHero(); Characteristics characteristics = hero.Characteristics; TViewModel viewModel = this.mapper.Map <TViewModel>(characteristics); return(viewModel); }
public void ViewWillAppear(bool animated) { ViewModel = ViewModel ?? (TViewModel)Activator.CreateInstance(typeof(TViewModel)); //todo ViewModel.ViewWillAppearing(); if (SetContextOrder == UpdateOrder.BeforeAppear) { BindingStorage.SetContext(owner, ViewModel); } }
Page IViewFactory.Resolve <TViewModel>() { TViewModel viewModel = _componentContext.Resolve <TViewModel>(); var viewType = _map[typeof(TViewModel)]; var view = _componentContext.Resolve(viewType) as Page; view.BindingContext = viewModel; return(view); }
internal void RemoveSelectedIndex(TViewModel viewModel) { if (ReferenceEquals(viewModel, null)) { return; } var index = _findIndex(viewModel); _remove(index); }
protected static void Navigate <TWindow, TViewModel>() where TWindow : Window, new() where TViewModel : class { TWindow w = new TWindow(); w.Show(); TViewModel vm = Activator.CreateInstance(typeof(TViewModel)) as TViewModel; w.DataContext = vm; }
/// <summary> /// Create new component, fill default commands and view properties. /// </summary> private TViewModel CreateComponent <TViewModel, TView>() where TViewModel : ComponentVM, new() where TView : FrameworkElement, new() { var vm = new TViewModel(); var v = new TView(); vm.CloseCommand = CloseComponentCommand; v.DataContext = vm; vm.View = v; return(vm); }
/// <summary> /// Creates or updates a ViewModel and adds values to some of the /// stock properties of the Controller. /// /// This default implementation initializes the ErrorDisplay and UserState /// objects after creation. /// </summary> /// <typeparam name="TViewModel"></typeparam> /// <returns></returns> protected virtual TViewModel CreateViewModel <TViewModel>() where TViewModel : class, new() { var model = new TViewModel(); if (model is BaseViewModel) { BaseViewModel baseModel = model as BaseViewModel; baseModel.ErrorDisplay = ErrorDisplay; } return(model); }
/// <summary> /// Creates or updates a ViewModel and adds values to some of the /// stock properties of the Controller. /// /// This default implementation initializes the ErrorDisplay and UserState /// objects after creation. /// </summary> /// <typeparam name="TViewModel"></typeparam> /// <returns></returns> public virtual TViewModel CreateViewModel <TViewModel>() where TViewModel : class, new() { var model = new TViewModel(); if (model is BaseViewModel) { BaseViewModel baseModel = model as BaseViewModel; baseModel.ErrorDisplay = ErrorDisplay; baseModel.UserState = UserState; } return(model); }