private void detail_OnEndEditEvent(object sender, EventArgs e) { stackPanel.Margin = new Thickness(0, 5, 0, 5); MonthDetail _sender = (MonthDetail)sender; Appointment appointment = _sender.Appointment; if (!_forceSave && string.IsNullOrEmpty(appointment.Subject) && !appointment.IsRepeating && !AppointmentDatabase.AppointmentExists(appointment)) { stackPanel.Children.Remove(_sender); AppointmentDatabase.Delete(appointment); ReminderQueue.RemoveItem(appointment.ID, appointment.IsRepeating ? appointment.RepresentingDate.Add(appointment.StartDate.TimeOfDay) : appointment.StartDate, ReminderType.Appointment); } else { Appointment exception = AppointmentDatabase.UpdateAppointment(appointment); if (exception != null) { _sender.Appointment = exception; } ReminderQueue.Populate(); } _forceSave = false; EndEditEvent(e); _activeDetail = null; }
public void CancelEdit() { _inEditMode = false; _appointment = _uneditedAppointment; InitializeDisplay(); display.Visibility = Visibility.Visible; edit.Visibility = Visibility.Collapsed; edit.IsEnabled = false; subjectEdit.IsEnabled = false; Height = CollapsedHeight; if (AppointmentDatabase.AppointmentExists(_appointment)) { EndEditEvent(EventArgs.Empty); } else { DeleteStartEvent(EventArgs.Empty); DeleteEndEvent(EventArgs.Empty); } }