我的代码和问题如下
step1.Visible = true;
//step1 is visible if i retrun from here but if do some work like below than its not visible until the task is completed
Thread.Sleep(5000); // some opration here Thread.Sleep is just for example
step1.Visible = true;// step1 visible here not before thread going to sleep
这里我想显示每一步的图像,但是第一步图像没有显示它是否跟随一些长时间运行的任务在Thread.Sleep(5000)的情况下是否有任何想法/技巧show step1?
答案 0 :(得分:2)
在睡眠(任何长时间运行)代码之前使用Application.DoEvents()
。
Application.DoEvents()将处理当前在消息队列中的所有Windows消息。
step1.Visible = true;
// Below 3 lines are not necessary. Use it only if DoEvents() doesn't work.
//step1.Invalidate();
//step1.Update();
//step1.Refresh();
// Will process the pending request of step1.Visible=true;
Application.DoEvents();
Thread.Sleep(5000);
step1.Visible = true;
答案 1 :(得分:1)
答案 2 :(得分:0)