diff --git a/src/Shared/HandyControl_Shared/Controls/Input/DatePicker.cs b/src/Shared/HandyControl_Shared/Controls/Input/DatePicker.cs index 4f2dca85..7d2c5fc7 100644 --- a/src/Shared/HandyControl_Shared/Controls/Input/DatePicker.cs +++ b/src/Shared/HandyControl_Shared/Controls/Input/DatePicker.cs @@ -156,7 +156,7 @@ namespace HandyControl.Controls var isError = !result.Data; if (isError) { - SetCurrentValue(IsErrorProperty, true); + SetCurrentValue(IsErrorProperty, ValueBoxes.TrueBox); SetCurrentValue(ErrorStrProperty, result.Message); } else diff --git a/src/Shared/HandyControl_Shared/Controls/Input/DateTimePicker.cs b/src/Shared/HandyControl_Shared/Controls/Input/DateTimePicker.cs index 06dd9af6..7da94e1c 100644 --- a/src/Shared/HandyControl_Shared/Controls/Input/DateTimePicker.cs +++ b/src/Shared/HandyControl_Shared/Controls/Input/DateTimePicker.cs @@ -427,9 +427,21 @@ namespace HandyControl.Controls } } - IsError = !result.Data; - ErrorStr = result.Message; - return result.Data; + var isError = !result.Data; + if (isError) + { + SetCurrentValue(IsErrorProperty, ValueBoxes.TrueBox); + SetCurrentValue(ErrorStrProperty, result.Message); + } + else + { + isError = Validation.GetHasError(this); + if (isError) + { + SetCurrentValue(ErrorStrProperty, Validation.GetErrors(this)[0].ErrorContent); + } + } + return !isError; } public override string ToString() => SelectedDateTime?.ToString(DateTimeFormat) ?? string.Empty; diff --git a/src/Shared/HandyControl_Shared/Themes/Styles/Base/DateTimePickerBaseStyle.xaml b/src/Shared/HandyControl_Shared/Themes/Styles/Base/DateTimePickerBaseStyle.xaml index f3450c2d..90e0ae7f 100644 --- a/src/Shared/HandyControl_Shared/Themes/Styles/Base/DateTimePickerBaseStyle.xaml +++ b/src/Shared/HandyControl_Shared/Themes/Styles/Base/DateTimePickerBaseStyle.xaml @@ -14,6 +14,7 @@ + @@ -323,6 +324,7 @@