Вот мой код.Я пытаюсь создать DateTime, используя числовые вверх-вниз.Я получаю исключение
System.ArgumentOutOfRangeException: значение '1/3/0001 12:00:00 AM' недопустимо для значения 'Value'.Значение должно быть между MinDate и MaxDate.Имя параметра: Значение '
Я пытался использовать событие проверки для числового вверх-вниз, но тогда оно не запускается.
public DateTime ToDateTime(DateTime referencetime = default(DateTime))
{
if (referencetime == default(DateTime)) referencetime = DateTime.Now;
DateTime returntime = referencetime;
try
{
returntime = new DateTime(
!Year.IsRelative ? Year.Value : referencetime.Year,
!Month.IsRelative ? Month.Value : referencetime.Month,
!Day.IsRelative ? Day.Value : referencetime.Day,
!Hour.IsRelative ? Hour.Value : referencetime.Hour,
!Minute.IsRelative ? Minute.Value : referencetime.Minute,
!Second.IsRelative ? Second.Value : referencetime.Second
);
if (Year.IsRelative)
returntime = returntime.AddYears(Year.Value);
if (Month.IsRelative)
returntime = returntime.AddMonths(Month.Value);
if (Day.IsRelative)
returntime = returntime.AddDays(Day.Value);
if (Hour.IsRelative)
returntime = returntime.AddHours(Hour.Value);
if (Minute.IsRelative)
returntime = returntime.AddMinutes(Minute.Value);
if (Second.IsRelative)
returntime = returntime.AddSeconds(Second.Value);
}
catch (Exception e) { }
DateTime.cs Дизайн
Я хочу отменить событие value_changed для outofRange
результатов исключения.Как мне это сделать?