public ParserViewModelBase(IQueryDispatcher queryDispatcher, ICommandDispatcher commandDispatcher, ICorrectionsCreator correctionsCreator, TransactionsProvider transactionsProvider, MassReplacerViewModel replacer) { TransactionsProvider = transactionsProvider; _queryDispatcher = queryDispatcher; _commandDispatcher = commandDispatcher; _correctionsCreator = correctionsCreator; _replacer = replacer; Update(); ParseCommand = new RelayCommand(ExecuteParseCommand, CanExecuteParseCommand); SaveCommand = new RelayCommand(ExecuteSaveCommand, CanExecuteSaveCommand); SelectedUpdateBalanceMode = ParserUpdateBalanceMode.IfNewer; }
public StocksViewModel(IQueryDispatcher queryDispatcher, ICommandDispatcher commandDispatcher, ICorrectionsCreator correctionsCreator) { _queryDispatcher = queryDispatcher; _commandDispatcher = commandDispatcher; _correctionsCreator = correctionsCreator; AddStockCommand = new RelayCommand(() => { var stock = new Stock(); stock.Balance.PropertyChanged += BalanceOnPropertyChanged; Stocks.Add(stock); stock.IsPropertyChangedEnabled = true; stock.Balance.IsPropertyChangedEnabled = true; }); RemoveCommand = new RelayCommand <Stock>(x => { MessengerInstance.Send(new DeleteStockMessage(x)); Stocks.Remove(x); _commandDispatcher.Execute(new DeleteStockCommand(Mapper.Map <DtoStock>(x))); }); //todo: think what should happen on stock delete... }