Есть форма, в которой при выборе опред. radiobutton и нажатия кнопки "начало" открывается новая форма. В зависимости от radiobutton на форме должны появляться с определенным интервалом элементы list1 и list2 в лейблах.
switch (main.passingText)
{
case "Цвета":
for (int i = 0; i < main.list1.Count; i++)
{
label_word.Text = main.list1[i];
for (int j = 0; j < main.list2.Count; j++)
{
label_transl.Text = main.list2[j];
Thread.Sleep((main.passText_forTime));
}
}
Как уже сказали в комментариях, используйте async/await
.
Замените строку
Thread.Sleep((main.passText_forTime));
на строку
await Task.Delay(main.passText_forTime);
При этом добавьте ключевое слово async
к сигнатуре метода.
Используйте async
/await
конструкцию:
Замените все Thread.Sleep();
на await Task.Delay()
. Не забудьте указать async
методу. Познакомиться поближе.
При апдейте UI контролов вам следует переходить в UI поток:
Invoke(() => label_transl.Text = main.list2[j]);
Подробнее про Control.Invoke()
.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Как узнать просмотрено ли сообщение или нет с помощью библиотеки MailKit
Привет всем, столкнулся с ошибкой при добавлении новой сущности в базу данныхНиже привожу код сущностей/код метода где создается сущность/код...
В общем, на работе стоит русская Windows 7, а дома английский Windows 10, так вот на работе с кодировками проблем нету, а дома какие-то кракозябры