YusairiYap Ответов: 1

Как предотвратить повторение вычислений при выборе одной и той же вещи?


Привет сообществу CodeProject!
У меня проблема с кодами.
Когда пользователь щелкает один и тот же элемент из элемента управления ComboBox.
Значение NumericUpDown повторит вычисление.
Итак, как я могу предотвратить вычисление, когда пользователь выбирает один и тот же элемент в элементе управления ComboBox?

Я надеюсь, что вы все сможете мне помочь и извините за мою плохую грамматику.
Спасибо.

Что я уже пробовал:

Для получения более подробной информации о моей текущей проблеме ниже приведен мой код для элемента управления ComboBox

Private Sub ComboBox2_SelectedIndexChanged (sender As Object, e As EventArgs) обрабатывает ComboBox2. SelectedIndexChanged
- Блок транслятора изменения скорости
Если ComboBox2. SelectedItem = "KB/s", то
NumericUpDown2. DecimalPlaces = 0
NumericUpDown2.Инкремент = 1
Транферратспидкбс.Включен = Истина
TranferRateSpeedMBs.Включен = Ложь

"Моя проблема [я хочу предотвратить вычисление, если пользователь выбрал ту же опцию в combobox]
NumericUpDown2.Значение = NumericUpDown2.Стоимость * 1000

ElseIf ComboBox2. SelectedItem = "MB/s", то
NumericUpDown2. DecimalPlaces = 2
NumericUpDown2.Инкремент = 0,01
Транферратспидкбс.Enabled = False
TranferRateSpeedMBs.Включен = Истина

"Моя проблема [я хочу предотвратить вычисление, если пользователь выбрал ту же опцию в combobox]
NumericUpDown2.Значение = NumericUpDown2.Стоимость / 1000

Конец, Если

1 Ответов

Рейтинг:
2

ProgrammingEnthusiast

Dim bFLAG_KB,bFLAG_MB as boolean

If ComboBox2.SelectedItem = "KB/s" Then

NumericUpDown2.DecimalPlaces = 0
NumericUpDown2.Increment = 1
TranferRateSpeedKBs.Enabled = True
TranferRateSpeedMBs.Enabled = False

'My problem [I want to prevent the calculation if user has selected same option in combobox]
   if NOT bFLAG_KB then
      NumericUpDown2.Value = NumericUpDown2.Value * 1000
      bFLAG_KB =true
   End IF
ElseIf ComboBox2.SelectedItem = "MB/s" Then
NumericUpDown2.DecimalPlaces = 2
NumericUpDown2.Increment = 0.01
TranferRateSpeedKBs.Enabled = False
TranferRateSpeedMBs.Enabled = True

'My problem [I want to prevent the calculation if user has selected same option in combobox]
    If NOT bFLAG_MB THEN
       NumericUpDown2.Value = NumericUpDown2.Value / 1000
       bFLAG_MB = True
    END IF
End If


YusairiYap

Прежде всего спасибо J. O. V. Y. за помощь!
Проблема все еще сохраняется даже после того, как я попробую ваш код. Когда пользователь нажимает один и тот же элемент в выпадающем списке, расчет повторяется снова. Это действительно беспокоит меня.