private void OnMonthViewDateTimeSelectionChanged(object sender, DateSelectionChangedEventArgs e) { if (IsDropDownOpen && SelectedDateTime != MonthView.SelectedDateTime) { SelectedDateTime = MonthView.SelectedDateTime; if (InputManager.Current.MostRecentInputDevice is MouseDevice) { IsDropDownOpen = false; } } }
private static void OnSelectedDateTimeChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { FXMonthView mv = (FXMonthView)d; DateTime? newValue = (DateTime?)e.NewValue; DateTime? oldValue = (DateTime?)e.OldValue; DateSelectionChangedEventArgs args = new DateSelectionChangedEventArgs(PreviewSelectedDateTimeChangedEvent); args.RemovedDates.Add(oldValue); args.AddedDates.Add(newValue); mv.RaisePreviewSelectedDateTimeChanged(args); if (!args.Handled) { args = new DateSelectionChangedEventArgs(SelectedDateTimeChangedEvent); args.RemovedDates.Add(oldValue); args.AddedDates.Add(newValue); mv.RaiseSelectedDateTimeChanged(args); } }
/// <summary> /// Raise SelectedDateTimeChanged event. /// </summary> protected virtual void RaiseSelectedDateTimeChanged(DateSelectionChangedEventArgs e) { RaiseEvent(e); }