Возможно ли сделать паузу в цикле C#?

227
24 декабря 2017, 06:41

У меня есть цикл и если у меня переменная меньше 0, то мне нужно, чтобы высвечивалась новая форма, а цикл ждал пока я не закончу работать с формой. Возможно ли это сделать?

while ((i <= 1000) && (auto.bak > 0))
{                       
    if ((auto.bak < 10)&&(auto.bak>0)) 
    {
        Random zpr = new Random();
        int zapr = zpr.Next(1, 10);
        if (auto.bak>=zapr)
        {
        } 
        else
        {
            car.go(zapr);
            //при выполнении этого условия, мне нужно чтобы цикл вставал на паузу и выполнялась функция car.go(zapr);
        }                           
    }
}
Answer 1

Если это WinForms приложение, то форму следует показывать используя метод ShowDialog. Цикл не будет выполняться до тех пор, пока такую форму не закроют.

Answer 2

Если вам не подходит ответ выше - тогда вам подойдет класс AutoResetEvent Пример можно увидеть тут - https://professorweb.ru/my/csharp/thread_and_files/1/1_12.php

READ ALSO
Как изменить цвет(прогресса/фона) ProgressBarEdit?

Как изменить цвет(прогресса/фона) ProgressBarEdit?

На сайте DevExpress в документации для v17

334
Закрасить всю строку в Excel

Закрасить всю строку в Excel

Открываю в c# Excel, туда записываю данные в соответствующие строки и столбцы, необходимо по условию выделить строчку каким-то цветом, как это...

370