private void addToListButton_Click(object sender, RoutedEventArgs e) { noteLabel.Visibility = System.Windows.Visibility.Collapsed; if (startTime.HasValue && endTime.HasValue) { if (startTime.SelectDateTime >= endTime.SelectDateTime) { ShowError("End time must be greater than start time."); return; } if (startTime.SelectDateTime.Year != endTime.SelectDateTime.Year) { // show warning of leave is only allowed in one year. ShowError("Please make sure your leave is in same year."); return; } else if (startTime.SelectDateTime < currentFrozenDate) // show warning of leave is before frozen date { ShowError("You cannot apply a leave which is before: " + currentFrozenDate.ToString("yyyy-MM-dd")); return; } int hours = CommonMethods.ComputeHours(startTime.SelectDateTime, endTime.SelectDateTime); string value = startTime.SelectDateTime.ToString("yyyy/MM/dd HH:00") + " - " + endTime.SelectDateTime.ToString("yyyy/MM/dd HH:00"); DateRecords dr = new DateRecords(); dr.Hours = hours; dr.Record = value; dr.StartTime = startTime.SelectDateTime; dr.EndTime = endTime.SelectDateTime; leaveItem.List.Add(dr); AskedHours += hours; actButton.IsEnabled = true; leaveItem.List.Sort(new DateRecordsComparision()); datesList.ItemsSource = null; datesList.ItemsSource = leaveItem.List; } }
private void removeFromListButton_Click(object sender, RoutedEventArgs e) { noteLabel.Visibility = System.Windows.Visibility.Collapsed; DateRecords item = (DateRecords)datesList.SelectedItem; for (int i = 0; i < leaveItem.List.Count; i++) { if (item == leaveItem.List[i]) { AskedHours -= leaveItem.List[i].Hours; leaveItem.List.RemoveAt(i); break; } } datesList.ItemsSource = null; datesList.ItemsSource = leaveItem.List; if (leaveItem.List.Count == 0) { actButton.IsEnabled = false; } }