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

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

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

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

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

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

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


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

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

15   голосов , оценка 3.933 из 5
Похожие ответы