2012-02-21 189 views
3

我需要延迟执行一行代码,比如说5秒。但是这样做VB.NET中的延迟执行

System.Threading.Thread.Sleep(5000)

整个UI挂起,我不希望这样的事情发生。因为我希望能够在用户可以看到的窗口中显示某些内容。有谁知道实现这个选择吗?

谢谢!

回答

5

使用可以使用5秒后执行一次的Timer。在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 
+0

谢谢@Jehof!这工作完美。 – will0809 2012-02-22 09:06:06