File tree Expand file tree Collapse file tree 1 file changed +17
-2
lines changed
src/WPFDevelopers.Shared/Controls/TimePicker Expand file tree Collapse file tree 1 file changed +17
-2
lines changed Original file line number Diff line number Diff line change @@ -87,6 +87,8 @@ public override void OnApplyTemplate()
8787 {
8888 base . OnApplyTemplate ( ) ;
8989 _textBox = GetTemplateChild ( EditableTextBoxTemplateName ) as TextBox ;
90+ if ( _textBox != null )
91+ _textBox . TextChanged += TextBox_TextChanged ;
9092 _timeSelector = GetTemplateChild ( TimeSelectorTemplateName ) as TimeSelector ;
9193 if ( _timeSelector != null )
9294 {
@@ -111,12 +113,25 @@ public override void OnApplyTemplate()
111113 }
112114 }
113115
116+ private void TextBox_TextChanged ( object sender , TextChangedEventArgs e )
117+ {
118+ if ( _textBox != null )
119+ {
120+ _timeSelector . SelectedTimeChanged -= TimeSelector_SelectedTimeChanged ;
121+ if ( DateTime . TryParse ( _textBox . Text , out var dateTime ) )
122+ {
123+ if ( SelectedTime . HasValue && dateTime . ToString ( SelectedTimeFormat ) == SelectedTime . Value . ToString ( SelectedTimeFormat ) ) return ;
124+ SelectedTime = dateTime ;
125+ }
126+ else
127+ SelectedTime = null ;
128+ _timeSelector . SelectedTimeChanged += TimeSelector_SelectedTimeChanged ;
129+ }
130+ }
114131 private void Popup_Opened ( object sender , EventArgs e )
115132 {
116133 if ( _timeSelector != null )
117- {
118134 _timeSelector . SetTime ( ) ;
119- }
120135 }
121136
122137 private void TimeSelector_SelectedTimeChanged ( object sender , RoutedPropertyChangedEventArgs < DateTime ? > e )
You can’t perform that action at this time.
0 commit comments