From f4d949460a684b87d3fb11f35ee8175065dd6d47 Mon Sep 17 00:00:00 2001 From: seedtyx Date: Mon, 8 Jun 2020 14:48:30 +0800 Subject: [PATCH 1/3] fix bug #393 fix bug #393 --- .../Controls/Input/NumericUpDown.cs | 27 ++++++++++++------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs b/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs index 53975dd3..b153a4b2 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; @@ -178,11 +178,7 @@ namespace HandyControl.Controls { 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); - } + 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; @@ -214,8 +219,12 @@ namespace HandyControl.Controls /// public double Value { - get => (double) GetValue(ValueProperty); - set => SetValue(ValueProperty, value); + get => (double)GetValue(ValueProperty); + set + { + SetValue(ValueProperty, value); + SetText(); + } } /// @@ -430,4 +439,4 @@ namespace HandyControl.Controls return result.Data; } } -} \ No newline at end of file +} From c9920ba9514400cebeaff38b2da26e04124c8661 Mon Sep 17 00:00:00 2001 From: seedtyx Date: Mon, 8 Jun 2020 16:04:22 +0800 Subject: [PATCH 2/3] Fix #393 Fix #393 --- .../HandyControl_Shared/Controls/Input/NumericUpDown.cs | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs b/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs index b153a4b2..c396ab1f 100644 --- a/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs +++ b/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs @@ -210,7 +210,7 @@ namespace HandyControl.Controls { ctl.Value = maximum; } - + ctl.SetText(); return num > maximum ? maximum : num; } @@ -220,11 +220,7 @@ namespace HandyControl.Controls public double Value { get => (double)GetValue(ValueProperty); - set - { - SetValue(ValueProperty, value); - SetText(); - } + set => SetValue(ValueProperty, value); } /// From cce5fab8b232b67a446a6ef35d3070142a65e4c7 Mon Sep 17 00:00:00 2001 From: NaBian <836904362@qq.com> Date: Thu, 18 Jun 2020 23:07:30 +0800 Subject: [PATCH 3/3] Update NumericUpDown.cs --- .../Controls/Input/NumericUpDown.cs | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs b/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs index c396ab1f..429ce518 100644 --- a/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs +++ b/src/Shared/HandyControl_Shared/Controls/Input/NumericUpDown.cs @@ -176,8 +176,8 @@ namespace HandyControl.Controls private static void OnValueChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { - var ctl = (NumericUpDown) d; - var v = (double) e.NewValue; + var ctl = (NumericUpDown)d; + var v = (double)e.NewValue; ctl.SetText(); ctl.OnValueChanged(new FunctionEventArgs(ValueChangedEvent, ctl) @@ -247,7 +247,7 @@ namespace HandyControl.Controls /// public double Maximum { - get => (double) GetValue(MaximumProperty); + get => (double)GetValue(MaximumProperty); set => SetValue(MaximumProperty, value); } @@ -275,7 +275,7 @@ namespace HandyControl.Controls /// public double Minimum { - get => (double) GetValue(MinimumProperty); + get => (double)GetValue(MinimumProperty); set => SetValue(MinimumProperty, value); } @@ -290,7 +290,7 @@ namespace HandyControl.Controls /// public double Increment { - get => (double) GetValue(IncrementProperty); + get => (double)GetValue(IncrementProperty); set => SetValue(IncrementProperty, value); } @@ -305,7 +305,7 @@ namespace HandyControl.Controls /// public int? DecimalPlaces { - get => (int?) GetValue(DecimalPlacesProperty); + get => (int?)GetValue(DecimalPlacesProperty); set => SetValue(DecimalPlacesProperty, value); } @@ -320,7 +320,7 @@ namespace HandyControl.Controls /// internal bool ShowUpDownButton { - get => (bool) GetValue(ShowUpDownButtonProperty); + get => (bool)GetValue(ShowUpDownButtonProperty); set => SetValue(ShowUpDownButtonProperty, value); } @@ -332,7 +332,7 @@ namespace HandyControl.Controls public bool IsError { - get => (bool) GetValue(IsErrorProperty); + get => (bool)GetValue(IsErrorProperty); set => SetValue(IsErrorProperty, value); } @@ -344,7 +344,7 @@ namespace HandyControl.Controls public string ErrorStr { - get => (string) GetValue(ErrorStrProperty); + get => (string)GetValue(ErrorStrProperty); set => SetValue(ErrorStrProperty, value); } @@ -359,7 +359,7 @@ namespace HandyControl.Controls public TextType TextType { - get => (TextType) GetValue(TextTypeProperty); + get => (TextType)GetValue(TextTypeProperty); set => SetValue(TextTypeProperty, value); } @@ -371,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); } /// @@ -386,7 +386,7 @@ namespace HandyControl.Controls /// public bool IsReadOnly { - get => (bool) GetValue(IsReadOnlyProperty); + get => (bool)GetValue(IsReadOnlyProperty); set => SetValue(IsReadOnlyProperty, value); }