private void AddNewTimeTableSubject(object sender, RoutedEventArgs e) { var addDialog = new Dialogs.AddNewSubjectToTimeTableDialog(GetDisplatedDays()); addDialog.ShowDialog(); if (!addDialog.Selected) { return; } int pairNumber = -1; Subject selectedSubject = addDialog.SelectedSubject; DaysOfWeek selectedDay = addDialog.SelectedDay; PairType selectedPairType = addDialog.SelectedPairType; foreach (var day in _displayedSchedule.ScheduleDayColumns) { if (day.DayName == addDialog.SelectedDay) { pairNumber = (day.SubjectDayDict.Count > 0) ? day.SubjectDayDict.Keys.Max() + 1 : 1; day.SubjectDayDict.Add(pairNumber, new SubjectScheduleItem() { PairType = selectedPairType, Subject = selectedSubject }); break; } } SubjectControl.LoadSchedule(_displayedSchedule); _subjectRepository.AddModifyOneTimeTableSubject(_displayedSchedule.Year, _displayedSchedule.SemesterNumber, _displayedSchedule.WeekNumber, selectedDay, pairNumber, selectedSubject, selectedPairType); }