private async void AddPerformerAsync() { // set initial information of a newly added performer var performer = ( await _performerService.AddPerformerAsync(new Performer { Name = "Unknown" }) ).Data; var performerViewModel = Mapper.Map <PerformerViewModel>(performer); using (var scope = App.DiContainer.BeginLifetimeScope()) { var editPerformerViewModel = scope.Resolve <EditPerformerViewModel>(); editPerformerViewModel.Performer = performerViewModel; editPerformerViewModel.Countries = new ObservableCollection <Country>( await _unitOfWork.CountryRepository.GetAllAsync()); var performerWindow = new EditPerformerWindow { DataContext = editPerformerViewModel }; performerWindow.ShowDialog(); } // clear all performers shown in the main window Performers.Clear(); PageCollection.Clear(); ActivateUpperPanel(false); _selectedPage = 0; // and show only newly added performer (to focus user's attention on said performer) Performers.Add(performerViewModel); }
private void EditPerformer() { if (SelectedPerformer == null) { MessageBox.Show("Please select performer to edit!"); return; } using (var scope = App.DiContainer.BeginLifetimeScope()) { var editPerformerViewModel = scope.Resolve <EditPerformerViewModel>(); editPerformerViewModel.Performer = SelectedPerformer; editPerformerViewModel.Countries = new ObservableCollection <Country>(_unitOfWork.CountryRepository.GetAll()); var performerWindow = new EditPerformerWindow { DataContext = editPerformerViewModel }; performerWindow.ShowDialog(); } }