When the DateTimePicker trys to parse an invalid DateTime string, could it revert the DateTime back to the previous valid DateTime (i.e. Value/current) as changing it to DateTime min is not very friendly.
I have changed the TryParseDateTime method in DateTimeUpDown.cs to work as suggested.
```
private bool TryParseDateTime(string text, out DateTime result)
{
bool isValid = false;
result = DateTime.Now;
DateTime current = Value.HasValue
? Value.Value
: DateTime.Parse(DateTime.Now.ToString(), CultureInfo.DateTimeFormat);
isValid = DateTimeParser.TryParse(text, GetFormatString(Format), current, CultureInfo, out result);
if (!isValid)
{
isValid = DateTime.TryParseExact(text, GetFormatString(Format), CultureInfo, DateTimeStyles.None, out result);
}
// The change I propose
if (!isValid)
result = current;
return isValid;
}
```
I have changed the TryParseDateTime method in DateTimeUpDown.cs to work as suggested.
```
private bool TryParseDateTime(string text, out DateTime result)
{
bool isValid = false;
result = DateTime.Now;
DateTime current = Value.HasValue
? Value.Value
: DateTime.Parse(DateTime.Now.ToString(), CultureInfo.DateTimeFormat);
isValid = DateTimeParser.TryParse(text, GetFormatString(Format), current, CultureInfo, out result);
if (!isValid)
{
isValid = DateTime.TryParseExact(text, GetFormatString(Format), CultureInfo, DateTimeStyles.None, out result);
}
// The change I propose
if (!isValid)
result = current;
return isValid;
}
```