public static DateTime AddCalendarSpan(this DateTime dateTime, CalendarSpan calendarSpan) { if (calendarSpan == null) { return(new DateTime(dateTime.Ticks)); } DateTime result; switch (calendarSpan.CalendarType) { case CalendarTypes.Days: result = dateTime.AddDays(System.Convert.ToDouble(calendarSpan.CalendarValue)); break; case CalendarTypes.Months: result = dateTime.AddMonths(System.Convert.ToInt32(calendarSpan.CalendarValue)); break; case CalendarTypes.Years: result = dateTime.AddYears(System.Convert.ToInt32(calendarSpan.CalendarValue)); break; default: result = new DateTime(dateTime.Ticks); break; } return(result); }
/// <summary> /// Копирует наработку (Создает новую наработку с такими же параметрами) /// </summary> /// <param name="source"></param> public Lifelength(Lifelength source) { if (source == null) { return; } // Cycles = source.Cycles; CalendarSpan = new CalendarSpan(source.CalendarSpan); TotalMinutes = source.TotalMinutes; }
private void SetCalendarData(CalendarSpan calendarSpan, bool changeCalendarTypes) { int days = Convert.ToInt32(calendarSpan.CalendarValue); if (_readOnly || changeCalendarTypes) { if (!CalendarApplicable) { textBoxCalendar.Text = NotApplicableString; textBoxFormattedCalendar.Text = NotApplicableString; } else { if (_showFormattedCalendar) { SetTextBoxFormattedCalendarValue(days); } else { textBoxCalendar.Text = days.ToString(); CalendarType = calendarSpan.CalendarType; } } } else { if (_showFormattedCalendar) { SetTextBoxFormattedCalendarValue(days); } else { SetTextBoxCalendarValue(days); } } }