Я создал этот код внутри методов, называемых «Готовый оператор», он будет вызываться при нажатии кнопки, но когда я нажимаю на кнопку, пока l oop продолжает вычислять число, введенное пользователем, до тех пор, пока «Module count = 17 "и выход.
Я не понимаю, почему он не выходит.
Минимальный пример, показывающий бесконечность l oop (полный код ниже):
while (ModuleCount < 17)
{
if (ModuleCount == 1)
{
ModuleCount++;
}
else if (ModuleCount == 2)
{
ModuleCount++;
}
}
Полный код
while (numbers != null && ModuleCount < 17)
{
if (ModuleCount == 1 && value == "DONE")
{
double? Degree = null;
double? MP_TD = numbers[0] == null ? null : (double?)double.Parse(numbers[0]);
MP_TD *= 0.4;
Degree = MP_TD;
numbers[0] = Degree.ToString();
UpdateNumbersView();
msgScreen = FindViewById<TextView>(Resource.Id.txtSolution);
msgScreen.Text = "Entre la note de Micro Precesseur (controle): ";
ModuleCount++;
}
else if (ModuleCount == 2)
{
double? Degree = null;
double? MP_TP = numbers[0] == null ? null : (double?)double.Parse(numbers[0]);
Degree = MP_TP;
numbers[0] = Degree.ToString();
UpdateNumbersView();
msgScreen = FindViewById<TextView>(Resource.Id.txtSolution);
msgScreen.Text = "Entre la note de Micro Precesseur (controle): ";
ModuleCount++;
}
}
Некоторое несвязанное изображение: