嗨,我正在尝试找到一种等待数毫秒的方法,然后再移至下一行代码,

我已经研究了Thread.Sleep,但这将冻结主窗体,我希望它保持 Activity 状态。

我尝试了计时器和秒表,并且当它们在应时应发布到控制台时都冻结了主窗体。

在我想要的等待中,我找不到使用task.delay或后台工作程序的方法。

伪代码:

Wait 2 - 6 seconds
Log "waiting"
Log "waiting"
Log "waiting"
Stop Waiting - Run next line of code.

我尝试过的方法只是冻结表单,然后填写日志,我只想一种简单的等待方法,而无需冻结表单,而不必处理被调用的事件,这意味着下一行不会运行。

任何帮助都将是很棒的,因为我还是C#的新手,这让我有点生气:(

最佳答案

关键字awaitTask.Delay一起使这个问题变得微不足道。

public async Task Foo()
{
    await Task.Delay(2000);
    txtConsole.AppendText("Waiting...");
    DoStuff();
}

10-06 10:39