示例:当我点击Button时,我希望Programm在MessageBox弹出之前等待4个Secons :) 这是什么代码?谢谢 :) 我用计时器尝试了它,但当我按下按钮时,MessageBox会自动弹出
答案 0 :(得分:2)
正如JDro04所指出的,您可以使用Thread.Sleep
来做延迟。但是如果你从主线程中执行它,你的应用程序将会挂起。所以你可以在单独的线程中做延迟并在主线程中调用MessageBox.Show
,这里是片段:
private void Button1_Click(object sender, RoutedEventArgs e)
{
Task.Factory
.StartNew(() => Thread.Sleep(4000))
.ContinueWith(
continuationAction: _ => { MessageBox.Show("My message!"); /* put rest of your code here */ },
cancellationToken: CancellationToken.None,
continuationOptions: TaskContinuationOptions.None,
scheduler: TaskScheduler.FromCurrentSynchronizationContext());
}