private void OnRemoveDestinatarioExecute() { var destinatarioToRemove = SelectedDestinatarioAdded; Servizio.Model.Anagrafiche.Remove(destinatarioToRemove); DestinatariAdded.Remove(destinatarioToRemove); DestinatariAvailable.Add(destinatarioToRemove); HasChanges = _servizioRepository.HasChanges(); ((DelegateCommand)SaveCommand).RaiseCanExecuteChanged(); }
private void SetupControls() { var serviceDestinatariIds = Servizio.Model.Anagrafiche.Where(a => a.IsMittente == false).Select(a => a.Id).ToList(); var addedDestinatari = _allAnagrafiche.Where(a => serviceDestinatariIds.Contains(a.Id)).ToList(); var availableDestinatari = _allAnagrafiche.Except(addedDestinatari).ToList(); var serviceDestinatariArIds = Servizio.Model.Anagrafiche.Where(a => a.IsMittente == false && a.IsDestinatarioAR == true).Select(a => a.Id).ToList(); var addedDestinatariAr = _allAnagrafiche.Where(a => serviceDestinatariArIds.Contains(a.Id)).ToList(); var availableDestinatariAr = _allAnagrafiche.Except(addedDestinatariAr).ToList(); var serviceDocumentiIds = Servizio.Model.Documenti.Select(a => a.Id).ToList(); var addedDocumenti = _allDocumenti.Where(a => serviceDocumentiIds.Contains(a.Id)).ToList(); var availableDocumenti = _allDocumenti.Except(addedDocumenti).ToList(); Mittenti.Clear(); foreach (var mittente in _allAnagrafiche) { Mittenti.Add(mittente); } DestinatariAdded.Clear(); DestinatariAvailable.Clear(); foreach (var addedDest in addedDestinatari) { DestinatariAdded.Add(addedDest); } foreach (var destAvailable in availableDestinatari) { DestinatariAvailable.Add(destAvailable); } DestinatariArAdded.Clear(); DestinatariArAvailable.Clear(); foreach (var addedDest in addedDestinatariAr) { DestinatariArAdded.Add(addedDest); } foreach (var destAvailable in availableDestinatariAr) { DestinatariArAvailable.Add(destAvailable); } // Documenti DocumentiAvailable.Clear(); foreach (var doc in availableDocumenti) { DocumentiAvailable.Add(doc); } DocumentiAdded.Clear(); foreach (var doc in addedDocumenti) { DocumentiAdded.Add(doc); } }