0

我试图在 Silverlight / C# 中找到一种方法来使 DispatchTimer 只运行一次。

我有一个用户表单,提交后我想显示一条消息 10 秒,然后消失并终止 DispatchTimer 线程。

我知道如何制作一个重复的 DispatchTimer:

clock.Interval = TimeSpan.FromSeconds(10);
clock.Tick += clockTick;

clock.Start();

但我希望该线程在完成后立即结束。

4

2 回答 2

5

这应该适合你:

DispatcherTimer clock = new DispatcherTimer();
clock.Interval = TimeSpan.FromSeconds(10);
clock.Tick += (object sender, EventArgs e) =>
{
    clock.Stop();
    // Some code here
};
clock.Start();

如果您不想扩大 DispatcherTimer 对象的范围,匿名事件处理程序也会将事物保持在“同一个地方”。

于 2012-07-11T18:05:54.417 回答
1

触发后,停止clockTick 处理程序中的计时器。

于 2012-07-11T18:05:43.800 回答