При Thread.Sleep форма не прорисовывается вовремя - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Изачаю потока на C#, возникла проблема. Сделал простую прогу, в котрой на форме расположен TextBox и кнопка, при нажатии на кнопку в текстбоксе должно появится 1е сообщение, через секунду второе. Вот код:
Листинг программы
  1. namespace WindowsApplication1
  2. {
  3. public partial class MyThread : Form
  4. {
  5. public MyThread()
  6. {
  7. InitializeComponent();
  8. }
  9. private void button1_Click(object sender, EventArgs e)
  10. {
  11. textBox1.Text = "Message 1" + "\r\n";
  12. System.Threading.Thread.Sleep(1000);
  13. textBox1.Text += "Message 2" + "\r\n";
  14. }
  15. }
  16. }
Проблема в том, что оба сообщения отображаются вместе спустя секунду, т.е. задержка происходит, но оба сообщения отображаются только после слипа. Почему так происходит и как это исправить?

Решение задачи: «При Thread.Sleep форма не прорисовывается вовремя»

textual
Листинг программы
  1. void Button1Click(object sender, EventArgs e)
  2.         {
  3.             textBox1.Text="sfddsfdgd";
  4.             textBox1.Refresh();
  5.             System.Threading.Thread.Sleep(1000);
  6.             textBox1.Text="43786597369573469";
  7.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.933 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы