private void nextDay_Btn_Click(object sender, EventArgs e) { bool firstMove = false; List <Booking> bookings = GData.bookings.Where(b => b.bookingDate.Date == dateTimePicker1.Value.Date).ToList(); foreach (Booking booking in bookings) { if (booking.timeRemaining < 0) { //booking.estimatedTime = - booking.timeRemaining; if (!firstMove) { DatabaseControl.moveBookingToNextDate(booking, -booking.timeRemaining); booking.estimatedTime += booking.timeRemaining; DatabaseControl.updateBooking(booking); } else { DatabaseControl.moveBookingToNextDate(booking, booking.estimatedTime); booking.estimatedTime = 0; DatabaseControl.updateBooking(booking); } firstMove = true; } } dateTimePicker1.Value = dateTimePicker1.Value.AddDays(1); }