public NewExpenseViewModel(IDataStore dataStore, IProgressCalculator progressCalculator) : base(dataStore) { try { _progressCalculator = progressCalculator; var _task = _progressCalculator.CalculateProgress(); MessagingCenter.Subscribe <BudgetsViewModel>(this, Constants.CategoriesChanged, async(sender) => { Progress = new ObservableCollection <BudgetProgress>(await _progressCalculator.CalculateProgress()); }); MessagingCenter.Subscribe <ItemEditorViewModel>(this, Constants.ExpenseChanged, async(sender) => { Progress = new ObservableCollection <BudgetProgress>(await _progressCalculator.CalculateProgress()); }); Progress = new ObservableCollection <BudgetProgress>(_task.Result); }catch (Exception ex) { Console.WriteLine(ex.Message); throw; } }