private static void OnSelectedDateTimeChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
FXDatePicker datepicker = (FXDatePicker)d;
DateTime? oldValue = (DateTime?)e.OldValue;
DateTime? newValue = (DateTime?)e.NewValue;
//Invalid the IsValid and Text property when SelectedDateTime is changed
datepicker.SetValue(IsValidPropertyKey, newValue.HasValue);
datepicker.DoFormat(newValue);
if (datepicker.MonthView != null)
{
datepicker.MonthView.SelectedDateTime = newValue;
}
RoutedPropertyChangedEventArgs<DateTime?> routedArgs = new RoutedPropertyChangedEventArgs<DateTime?>(oldValue, newValue, SelectedDateTimeChangedEvent);
datepicker.OnSelectedDateTimeChanged(routedArgs);
}