public AccomodationListViewModel(StudentHostelContext context) : base(context) { GetData(); GetStudentsList(); GetRoomsList(); if (AccomodationList == null) { CurrentAccomodation = null; } else if (AccomodationList.Count == 0) { CurrentAccomodation = null; } else { CurrentAccomodation = AccomodationList.First(); } // Инициализация команд AddCommand = new Command(Add, () => { return(!(IsAdding || IsEditing) && context != null); }); SaveCommand = new Command(SaveChanges, () => { return((IsAdding || IsEditing) && context != null); }); CancelCommand = new Command(DiscardChanges, () => { return((IsAdding || IsEditing) && context != null); }); EditCommand = new Command(Edit, () => { return(!(IsAdding || IsEditing) && isEditable && context != null); }); }
protected override void Add() { AccomodationList.Add(new AccomodationViewModel { AccomodationId = 0, DateStart = DateTime.Now }); CurrentAccomodation = AccomodationList.Last(); IsAdding = true; }
protected override void DiscardChanges() { if (IsAdding) { AccomodationList.Remove(CurrentAccomodation); IsAdding = false; ErrorMessage = string.Empty; } else if (IsEditing) { IsEditing = false; CurrentAccomodation.DateEnd = null; ErrorMessage = string.Empty; } }