diff --git a/src/Avalonia.Controls/Calendar/CalendarDatePicker.cs b/src/Avalonia.Controls/Calendar/CalendarDatePicker.cs
index 0126a0c075..0005e07536 100644
--- a/src/Avalonia.Controls/Calendar/CalendarDatePicker.cs
+++ b/src/Avalonia.Controls/Calendar/CalendarDatePicker.cs
@@ -202,7 +202,7 @@ namespace Avalonia.Controls
}
///
- protected override void OnPropertyChanged(AvaloniaPropertyChangedEventArgs change)
+ protected override void OnPropertyChanged(AvaloniaPropertyChangedEventArgs change)
{
// CustomDateFormatString
if (change.Property == CustomDateFormatStringProperty)
@@ -215,8 +215,8 @@ namespace Avalonia.Controls
// IsDropDownOpen
else if (change.Property == IsDropDownOpenProperty)
{
- var oldValue = change.OldValue.GetValueOrDefault();
- var value = change.NewValue.GetValueOrDefault();
+ var oldValue = change.GetOldValue();
+ var value = change.GetNewValue();
if (_popUp != null && _popUp.Child != null)
{
@@ -246,8 +246,8 @@ namespace Avalonia.Controls
// SelectedDate
else if (change.Property == SelectedDateProperty)
{
- var addedDate = change.NewValue.GetValueOrDefault() as DateTime?;
- var removedDate = change.OldValue.GetValueOrDefault() as DateTime?;
+ var addedDate = change.GetNewValue();
+ var removedDate = change.GetOldValue();
if (SelectedDate != null)
{
@@ -291,8 +291,8 @@ namespace Avalonia.Controls
// Text
else if (change.Property == TextProperty)
{
- var oldValue = change.OldValue.GetValueOrDefault() as string;
- var value = change.NewValue.GetValueOrDefault() as string;
+ var oldValue = change.GetOldValue();
+ var value = change.GetNewValue();
if (!_suspendTextChangeHandler)
{
@@ -332,12 +332,14 @@ namespace Avalonia.Controls
}
///
- protected override void UpdateDataValidation(AvaloniaProperty property, BindingValue value)
+ protected override void UpdateDataValidation(AvaloniaProperty property, BindingValueType state, Exception? error)
{
if (property == SelectedDateProperty)
{
DataValidationErrors.SetError(this, error);
}
+
+ base.UpdateDataValidation(property, state, error);
}
///