protected async override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); CategoryListParameter parameter = e.GetParameterOrDefault <CategoryListParameter>(); ViewModel = new CategoryListViewModel(commandDispatcher, navigator); // Bind events. handlers.Add(eventHandlers.AddUiThread <CategoryCreated>(ViewModel, Dispatcher)); handlers.Add(eventHandlers.AddUiThread <CategoryRenamed>(ViewModel, Dispatcher)); handlers.Add(eventHandlers.AddUiThread <CategoryDescriptionChanged>(ViewModel, Dispatcher)); handlers.Add(eventHandlers.AddUiThread <CategoryColorChanged>(ViewModel, Dispatcher)); handlers.Add(eventHandlers.AddUiThread <CategoryIconChanged>(ViewModel, Dispatcher)); handlers.Add(eventHandlers.AddUiThread <CategoryDeleted>(ViewModel, Dispatcher)); // Just to show the loading wheel. await Task.Delay(100); IEnumerable <CategoryModel> models = await queryDispatcher.QueryAsync(new ListAllCategory()); foreach (CategoryModel model in models) { CategoryEditViewModel viewModel = new CategoryEditViewModel(commandDispatcher, navigator, model.Key, model.Name, model.Description, model.Color, model.Icon); if (parameter.Key.Equals(model.Key)) { viewModel.IsSelected = true; } ViewModel.Items.Add(viewModel); } UpdateSelectedItemView(); ContentLoaded?.Invoke(this, EventArgs.Empty); }
protected async override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); eventHandlers .Add <CurrencyCreated>(this) .Add <CurrencyDefaultChanged>(this) .Add <CurrencyExchangeRateSet>(this) .Add <CurrencyExchangeRateRemoved>(this) .Add <CurrencySymbolChanged>(this) .Add <CurrencyDeleted>(this); CurrencyParameter parameter = e.GetParameterOrDefault <CurrencyParameter>(); IEnumerable <CurrencyModel> models = await queryDispatcher.QueryAsync(new ListAllCurrency()); ViewModel = new CurrencyListViewModel(navigator); foreach (CurrencyModel model in models) { ViewModel.Items.Add(new CurrencyEditViewModel(navigator, commandDispatcher, messageBuilder, queryDispatcher, model.UniqueCode, model.Symbol)); } UpdateStandalone(); CurrencyModel defaultModel = models.FirstOrDefault(c => c.IsDefault); if (defaultModel != null) { UpdateDefaultCurrency(defaultModel.UniqueCode); } ContentLoaded?.Invoke(this, EventArgs.Empty); }
protected override async void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); parameter = e.GetParameterOrDefault <SummaryParameter>(); await LoadAsync(); handlers.Add(eventHandlers.AddUiThread(this, Dispatcher)); }