Ejemplo n.º 1
0
        private readonly WithDrawCashViewModel withdrawCashViewModel; // модель представление для меню выдачи средств

        /// <summary>
        /// Конструктор модели представления для главного окна
        /// </summary>
        /// <param name="mainWindow">главное окно</param>
        /// <param name="MessageService">сервис сообщений</param>
        /// <param name="InfoFileService">сервис открытия файла информации</param>
        /// <param name="DepositCashService">сервис внесения средств</param>
        /// <param name="WithdrawCashService">сервис выдачи средств</param>
        public MainViewModel(MainWindow mainWindow,
                             IMessageService MessageService, IInfoFileService InfoFileService, IDepositCashService DepositCashService, IWithdrawCashService WithdrawCashService)
        {
            this.mainWindow      = mainWindow;
            this.infoFileService = InfoFileService;
            this.messageService  = MessageService;

            cashMachine = new CashMachine();

            depositCashViewModel  = new DepositCashViewModel(MessageService, DepositCashService, cashMachine);
            withdrawCashViewModel = new WithDrawCashViewModel(MessageService, WithdrawCashService, cashMachine);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Конструктор главной модели представления
        /// </summary>
        /// <param name="MainWindow">главное окно</param>
        /// <param name="DialogService">сервис работы с диалоговыми окнами</param>
        /// <param name="FileHandlerService">сервис работы с обработчиком файлов</param>
        /// <param name="InfoFile">сервис работы с информационным файлом</param>
        public MainViewModel(MainWindow MainWindow, IDialogService DialogService, ITextHandler FileHandlerService, IInfoFileService InfoFile)
        {
            this.mainWindow         = MainWindow;
            this.dialogService      = DialogService;
            this.textHandlerService = FileHandlerService;
            this.infoFileService    = InfoFile;

            Documents = new ObservableCollection <Document>();

            // Инициализация BackgroundWorker для реализации многопоточности
            this.Worker = new BackgroundWorker {
                WorkerReportsProgress = true
            };
            this.Worker.DoWork             += Worker_DoWork;
            this.Worker.RunWorkerCompleted += Worker_RunWorkerCompleted;

            // Инициализация значений по умолчанию для свойств отвечающих за параметры обработки текста
            MinWordLength          = 5;
            RemovePunctuationMarks = true;
        }