我需要将一行代码的执行延迟5秒。但是通过做System.Threading.Thread.Sleep(5000)
整个UI都挂起了,我不希望这种情况发生。因为我希望能够在窗口中显示用户可以看到的东西。有人知道实现此目标的替代方法吗?
谢谢!
最佳答案
使用可以使用5秒钟后执行一次的计时器。在WPF中,通常将使用DispatcherTimer。
dispatcherTimer = New Threading.DispatcherTimer()
AddHandler dispatcherTimer.Tick, AddressOf dispatcherTimer_Tick
dispatcherTimer.Interval = New TimeSpan(0,0,5)
dispatcherTimer.Start()
Private Sub dispatcherTimer_Tick(ByVal sender As Object, ByVal e As EventArgs)
dispatcherTimer.Stop();
'' Your code to be executed after 5 seconds
End Sub
关于wpf - VB.NET中的延迟执行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9374724/