在Universal App中等待5秒钟

los*_*uke 6 c# countdown uwp pause

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

我唯一想要的是等待5秒钟来完成下一个动作.我试过Task.睡觉但按下的按钮被冻结了......

暂停应该在这里:

loading.IsActive = true;

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

loading.IsActive = false;
Run Code Online (Sandbox Code Playgroud)

如何暂停5秒?

cro*_*oxy 18

你可以使用这个Task.Delay()方法:

loading.IsActive = true;
await Task.Delay(5000);
loading.IsActive = false;
Run Code Online (Sandbox Code Playgroud)

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

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

await Task.Delay(TimeSpan.FromSeconds(5));
Run Code Online (Sandbox Code Playgroud)