计时器不包含“更改”的定义

时间:2016-07-19 15:14:30

标签: c# wpf timer

我有一个计时器,当某个事件(someEvent)发生一秒时开始计数,如果事件在这一秒内再次触发我希望第一个计时器停止并从0再次开始计数我试过这个:

 void someEvent (object sender, TextChangedEventArgs e ) 
        {

            aTimer = new System.Timers.Timer();
            aTimer.Change(5000, 0);
            aTimer.Elapsed += OnTimedEvent;
            aTimer.AutoReset = true;

            aTimer.Enabled = true;

        }
MainWindow中的

计时器定义:

private  System.Timers.Timer aTimer;

根据此C# Timer.Change Method

但是我对aTimer.Change的错误说:“计时器不包含'更改'的定义。”

这是使用WPF实现的。

2 个答案:

答案 0 :(得分:1)

命名空间很重要

.NET有很多定时器类,每个类都有自己的特定功能和公开的方法,因此很容易在命名空间之间混淆(因为大多数类只被称为Timer

您目前正在使用System.Timers.Timer类,该类主要由Start()Stop()方法组成。如果您需要Change()方法,则需要使用System.Threading.Timer类的实例:

// Declare the timer as the other type of timer
aTimer = new System.Threading.Timer();

答案 1 :(得分:0)

你的是System.Timers.Timer。此计时器没有Change Method

Timer.Change() Timer.Change

中使用System.Threading.Timer事件