protected override DateTime CalcCalendarEndDate()
{
var pd = (PersianDate)DateTime;
switch (Calendar.View)
{
case DateEditCalendarViewType.MonthInfo:
case DateEditCalendarViewType.QuarterInfo:
return new PersianDate(pd.Year, pd.Month, pc.GetDaysInMonth(pd.Year, pd.Month), 23, 59, 59);
case DateEditCalendarViewType.YearInfo:
return new PersianDate(pd.Year, 12, pc.GetDaysInMonth(pd.Year, 12), 23, 59, 59);
case DateEditCalendarViewType.YearsInfo:
{
var year = Math.Min(PersianDate.MaxValue.Year, pd.Year + 9);
return new PersianDate(year, 12, pc.GetDaysInMonth(year, 12), 23, 59, 59);
}
case DateEditCalendarViewType.YearsGroupInfo:
{
var year = Math.Min(PersianDate.MaxValue.Year, pd.Year + 99);
return new PersianDate(year, 12, pc.GetDaysInMonth(year, 12), 23, 59, 59);
}
default:
return Calendar.MaxValue;
}
}