public async Task LoadAsync() { // 34 await NavigationViewModel.LoadAsync(); }
private async void OpenDetailView(OpenDetailViewEventArgs args) { Int64 startTicks = Log.EVENT_HANDLER($"(CatMainViewModel) Enter Id:({args.Id}(", Common.LOG_CATEGORY); var detailViewModel = DetailViewModels .SingleOrDefault(vm => vm.Id == args.Id && vm.GetType().Name == args.ViewModelName); if (detailViewModel == null) { switch (args.ViewModelName) { case nameof(CatDetailViewModel): detailViewModel = (IDetailViewModel)_CatDetailViewModelCreator(); break; case nameof(DogDetailViewModel): detailViewModel = (IDetailViewModel)_DogDetailViewModelCreator(); break; //case nameof(MeetingDetailViewModel): // detailViewModel = _meetingDetailViewModelCreator(); // break; case nameof(ToyDetailViewModel): detailViewModel = _ToyDetailViewModelCreator(); break; // This should not happen anymore withe TYPEEvent default: return; } // Verify item still exists (may have been deleted) try { await detailViewModel.LoadAsync(args.Id); } catch (Exception ex) { //MessageDialogService.ShowInfoDialog($"Cannot load the entity ({ex})" + // "It may have been deleted by another user. Updating Navigation"); var message = $"Cannot load the entity ({ex})" + "It may have been deleted by another user. Updating Navigation"; DialogService.Show("NotificationDialog", new DialogParameters($"message={message}"), r => { }); await NavigationViewModel.LoadAsync(); return; } DetailViewModels.Add(detailViewModel); } SelectedDetailViewModel = detailViewModel; Log.VIEWMODEL("(CatMainViewModel) Exit", Common.LOG_CATEGORY, startTicks); }