C#中的定时器问题,怎么开始和结束

private System.Threading.Timer csvtimer = null;

csvtimer = new System.Threading.Timer(new TimerCallback(CheckCsv), null, 0, 1000 * 300);//5分钟
            CheckCsv(null);

 

不是控件,路过的大神能看一下怎么放在button下,两个button,一个控制定时器开始,一个控制定时器结束。

public System.Timers.Timer csvtimer  = new System.Timers.Timer();//实例化Timer类

public void StartTimer()
 {
       csvtimer.Elapsed += new System.Timers.ElapsedEventHandler(CheckCsv);//到达时间的时候执行事件;
       csvtimer.Interval = 3000;//设置时间间隔,单位:毫秒
       csvtimer.AutoReset = false;//设置是执行一次(false)还是一直执行(true);
       csvtimer.Enabled = false;//是否立即执行System.Timers.Timer.Elapsed事件;
}


public void CheckCsv(object source, System.Timers.ElapsedEventArgs e)
{
    //需要执行的事件
}

csvtimer.Enabled=false;//关闭

csvtimer.Enabled=true;//开启

fmxk.ac.cn 这个是我的博客,有问题可以留言大家一起讨论哦!

有直接的方法的

csvtimer.Start();

csvtimer.Stop();

//当资源需要释放的时候最好还是先close在关闭承载她的资源
csvtimer.Close();

        
public Thread csvtimer = new Thread(new ParameterizedThreadStart(Csvtimer));

public static void Csvtimer(object obj)
{
        //事件    
}

这个是带参数的可以直接start和stop运行

public Thread csvtimer = new Thread(new ParameterizedThreadStart(Csvtimer));

public void StartTimer()
 {
       csvtimer.Elapsed += new System.Timers.ElapsedEventHandler(CheckCsv);//到达时间的时候执行事件;
       csvtimer.Interval = 3000;//设置时间间隔,单位:毫秒
       csvtimer.AutoReset = false;//设置是执行一次(false)还是一直执行(true);
       csvtimer.Enabled = false;//是否立即执行System.Timers.Timer.Elapsed事件;
}


public void CheckCsv(object source, System.Timers.ElapsedEventArgs e)
{
    //需要执行的事件
}