如何在长循环之前立即更新显示的文本框

时间:2018-10-25 19:53:15

标签: c# .net

我的事件处理程序UIButton440_TouchUpInside(UIButton sender)更新了我的TextBox.Text然后进行了长循环,然后返回。但是Textbox直到返回后才会更新。

如何立即显示更新的TextBox?

(像vb.net一样处理application.doEvents)

2 个答案:

答案 0 :(得分:3)

您可以尝试触发线程来进行长循环。我通常喜欢为此使用工人,像这样:

        txt.Text = "abc";
        BackgroundWorker worker = new BackgroundWorker();

        worker.DoWork += (o, ea) =>
        {
            //Long loop
        };
        worker.RunWorkerCompleted += (o, ea) =>
        {
            //Do something when the loop ends
        };
        worker.RunWorkerAsync();

答案 1 :(得分:1)

假设您使用的是Windows窗体,则可以在Update上调用TextBox方法来强制刷新。

yourTextBox.Update();