//private void Select(List<PlanObjectItem> items) //{ // if (!IsUpdatingSelectedItems) // { // BeginUpdateSelectedItems(); // items.ForEach(a => // { // SelectedItems.Add((BaseObject)ItemContainerGenerator.ItemFromContainer(a)); // a.IsSelected = true; // } // ); // EndUpdateSelectedItems(); // } //} private void Unselect(PlanObjectItem item) { if (!IsUpdatingSelectedItems) { BeginUpdateSelectedItems(); SelectedItems.Remove((BaseObject)ItemContainerGenerator.ItemFromContainer(item)); item.IsSelected = false; /* ----!---- */ SelectedRooms.Remove((Room)ItemContainerGenerator.ItemFromContainer(item)); EndUpdateSelectedItems(); } }
// Return the Booking object created by this window public override Booking GetItem() { // Validate if (SelectedTimeslot == null || SelectedRooms == null || SelectedRooms.Count == 0 || SelectedSubject == null || StudentSelector.SelectedStudents == null || SelectedTeacher == null) { return(null); } return(new Booking(SelectedTimeslot, SelectedRooms.Select(c => c.Value).ToList(), SelectedSubject, StudentSelector.SelectedStudents.ToList(), SelectedTeacher, SelectedBookingType) { Id = BookingId, Date = CurrentDate }); }
public void Configure() { Subsystems = (ListCollectionView)CollectionViewSource.GetDefaultView(SubsystemItems); SelectedRooms.CollectionChanged += SelectedRooms1CollectionChanged; Subsystems.Filter += FilterSubsystemsByType; Plans = _planObjectsrepository.RootObjects; SelectedContainer = Plans.FirstOrDefault() as Container; _planObjectsrepository.DataUpdatedEvent += sender => { SelectedContainer = null; Application.Current.Dispatcher.Invoke(() => SelectedRooms.Clear()); Plans = _planObjectsrepository.RootObjects; SelectedContainer = Plans.FirstOrDefault() as Container; }; _isReady = true; OnViewModelConfiguredEvent(); }