From 3b0f6ac5a2fc92fc274d510ab9add146d9e65c1c Mon Sep 17 00:00:00 2001 From: brianlagunas_cp Date: Fri, 6 May 2011 13:32:22 +0000 Subject: [PATCH] DateTimePicker: added ValueChanged event --- .../Implementation/DateTimePicker.cs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/DateTimePicker/Implementation/DateTimePicker.cs b/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/DateTimePicker/Implementation/DateTimePicker.cs index 763f383d..9cab475b 100644 --- a/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/DateTimePicker/Implementation/DateTimePicker.cs +++ b/ExtendedWPFToolkitSolution/Src/WPFToolkit.Extended/DateTimePicker/Implementation/DateTimePicker.cs @@ -160,6 +160,10 @@ namespace Microsoft.Windows.Controls _calendar.SelectedDate = newValue; _calendar.DisplayDate = newValue.Value; } + + RoutedPropertyChangedEventArgs args = new RoutedPropertyChangedEventArgs(oldValue, newValue); + args.RoutedEvent = ValueChangedEvent; + RaiseEvent(args); } #endregion //Value @@ -253,6 +257,18 @@ namespace Microsoft.Windows.Controls #endregion //Event Handlers + #region Events + + //Due to a bug in Visual Studio, you cannot create event handlers for Nullable args in XAML, so I have to use object instead. + public static readonly RoutedEvent ValueChangedEvent = EventManager.RegisterRoutedEvent("ValueChanged", RoutingStrategy.Bubble, typeof(RoutedPropertyChangedEventHandler), typeof(DateTimePicker)); + public event RoutedPropertyChangedEventHandler ValueChanged + { + add { AddHandler(ValueChangedEvent, value); } + remove { RemoveHandler(ValueChangedEvent, value); } + } + + #endregion //Events + #region Methods private void CloseDateTimePicker()