Timer和DispatcherTimer简单使用

Posted 风来风往风伤

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Timer和DispatcherTimer简单使用相关的知识,希望对你有一定的参考价值。

1. 设定计时器相关属性,使用委托方法处理事件触发

DispatcherTimer dispatcherTimer= new DispatcherTimer();
dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
dispatcherTimer.Interval = new TimeSpan(0, 0, _heartBeat.Period);
dispatcherTimer.Start();

 

2.一种比较安全的使用方法

private Timer aTimer = null;
private delegate void TimerDispatcherDelegate();
public MainWindow() {
InitializeComponent();
aTimer = new Timer(1000);
aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
aTimer.Interval = 1000;
aTimer.Enabled = true;
}
private void OnTimedEvent(object sender, EventArgs e) {
this.Dispatcher.Invoke(DispatcherPriority.Normal, new TimerDispatcherDelegate(updateUI));
}

private void updateUI() {
timeLabel.Content = DateTime.Now.ToUniversalTime();
}
}

以上是关于Timer和DispatcherTimer简单使用的主要内容,如果未能解决你的问题,请参考以下文章

timer和dispatchertimer功能效果完全一样对吗

C# 计时器用法(DispatcherTimerSystem.Timers.TimerSystem.Threading.Timer)

无法创建 DispatcherTimer [重复]

Xamarin.Android 使用Timer 并更改UI

WPF 如何估计的时间执行一次操作?比如每3秒执行一个方法? 能简单的介绍下么?

WPF Timer 控件在哪里?