7

我需要在 Windows 10 UWP 应用程序中暂停一下。

而我唯一想要的就是等待 5 秒来做下一个动作。我试过任务。睡觉,但是按下的按钮被冻结了......

暂停应该在这里:

loading.IsActive = true;

   //int period = 5000;
   //ThreadPoolTimer PeriodicTimer =
   //ThreadPoolTimer.CreatePeriodicTimer(TimeSpan.FromMilliseconds(period));

loading.IsActive = false;

怎么做5s停顿?

4

1 回答 1

19

您可以使用以下Task.Delay()方法:

loading.IsActive = true;
await Task.Delay(5000);
loading.IsActive = false;

使用此方法时,您的 UI 不会冻结。

编辑
IMO 一种更易读的方式是不要像上面的例子一样将毫秒作为参数传递。但改为传递一个TimeSpan实例:

await Task.Delay(TimeSpan.FromSeconds(5));
于 2016-01-28T10:38:15.223 回答