diff --git a/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs b/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs index 53975dd3..429ce518 100644 --- a/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs +++ b/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Windows; using System.Windows.Controls; using System.Windows.Input; @@ -176,13 +176,9 @@ namespace HandyControl.Controls private static void OnValueChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { - var ctl = (NumericUpDown) d; - var v = (double) e.NewValue; - if (ctl._updateText && ctl._textBox != null) - { - ctl._textBox.Text = ctl.CurrentText; - ctl._textBox.Select(ctl._textBox.Text.Length, 0); - } + var ctl = (NumericUpDown)d; + var v = (double)e.NewValue; + ctl.SetText(); ctl.OnValueChanged(new FunctionEventArgs(ValueChangedEvent, ctl) { @@ -190,6 +186,15 @@ namespace HandyControl.Controls }); } + private void SetText() + { + if (_updateText && _textBox != null) + { + _textBox.Text = CurrentText; + _textBox.Select(_textBox.Text.Length, 0); + } + } + private static object CoerceValue(DependencyObject d, object basevalue) { var ctl = (NumericUpDown)d; @@ -205,7 +210,7 @@ namespace HandyControl.Controls { ctl.Value = maximum; } - + ctl.SetText(); return num > maximum ? maximum : num; } @@ -214,7 +219,7 @@ namespace HandyControl.Controls /// public double Value { - get => (double) GetValue(ValueProperty); + get => (double)GetValue(ValueProperty); set => SetValue(ValueProperty, value); } @@ -242,7 +247,7 @@ namespace HandyControl.Controls /// public double Maximum { - get => (double) GetValue(MaximumProperty); + get => (double)GetValue(MaximumProperty); set => SetValue(MaximumProperty, value); } @@ -270,7 +275,7 @@ namespace HandyControl.Controls /// public double Minimum { - get => (double) GetValue(MinimumProperty); + get => (double)GetValue(MinimumProperty); set => SetValue(MinimumProperty, value); } @@ -285,7 +290,7 @@ namespace HandyControl.Controls /// public double Increment { - get => (double) GetValue(IncrementProperty); + get => (double)GetValue(IncrementProperty); set => SetValue(IncrementProperty, value); } @@ -300,7 +305,7 @@ namespace HandyControl.Controls /// public int? DecimalPlaces { - get => (int?) GetValue(DecimalPlacesProperty); + get => (int?)GetValue(DecimalPlacesProperty); set => SetValue(DecimalPlacesProperty, value); } @@ -315,7 +320,7 @@ namespace HandyControl.Controls /// internal bool ShowUpDownButton { - get => (bool) GetValue(ShowUpDownButtonProperty); + get => (bool)GetValue(ShowUpDownButtonProperty); set => SetValue(ShowUpDownButtonProperty, value); } @@ -327,7 +332,7 @@ namespace HandyControl.Controls public bool IsError { - get => (bool) GetValue(IsErrorProperty); + get => (bool)GetValue(IsErrorProperty); set => SetValue(IsErrorProperty, value); } @@ -339,7 +344,7 @@ namespace HandyControl.Controls public string ErrorStr { - get => (string) GetValue(ErrorStrProperty); + get => (string)GetValue(ErrorStrProperty); set => SetValue(ErrorStrProperty, value); } @@ -354,7 +359,7 @@ namespace HandyControl.Controls public TextType TextType { - get => (TextType) GetValue(TextTypeProperty); + get => (TextType)GetValue(TextTypeProperty); set => SetValue(TextTypeProperty, value); } @@ -366,8 +371,8 @@ namespace HandyControl.Controls public bool ShowClearButton { - get => (bool) GetValue(ShowClearButtonProperty); - set => SetValue(ShowClearButtonProperty, value); + get => (bool)GetValue(ShowClearButtonProperty); + set => SetValue(ShowClearButtonProperty, value); } /// @@ -381,7 +386,7 @@ namespace HandyControl.Controls /// public bool IsReadOnly { - get => (bool) GetValue(IsReadOnlyProperty); + get => (bool)GetValue(IsReadOnlyProperty); set => SetValue(IsReadOnlyProperty, value); } @@ -430,4 +435,4 @@ namespace HandyControl.Controls return result.Data; } } -} \ No newline at end of file +}