北京六朝古都是哪六朝:C# 无法停止TIMER 求教

来源:百度文库 编辑:高考问答 时间:2024/04/30 05:19:33
private void button1_Click(object sender, System.EventArgs e)
{
System.Timers.Timer aTimer=tt();
aTimer.Interval=10000;
aTimer.Stop();
if (button1.Text=="运行")
{
// DataSet myDataSet=dbSet();
aTimer.Enabled=true;
// aTimer.Start();
aTimer.Elapsed+=new ElapsedEventHandler(fsotest);
button1.Text="停止";
checkBox2.Enabled=false;
listBox1.Items.Add("接口数据完成...");
}
else if
{
aTimer.Enabled=false;
aTimer.Stop();
aTimer.Close();
button1.Text="运行";
dataGrid1.DataSource=null;
listBox1.Items.Clear();
listBox1.Items.Add("系统已经停止运行...");
}}
调用的事件定时生成文本文件..可是停止后还照生不误..请指点

System.Timers.Timer aTimer;
private void button1_Click(object sender, System.EventArgs e)
{
if (tt == null)
{
aTimer = new System.Timers.Timer();
aTimer.Interval = 10000;
}
if (button1.Text == "运行")
{
// DataSet myDataSet=dbSet();
aTimer.Elapsed += new ElapsedEventHandler(fsotest);
aTimer.Start();
// aTimer.Start();
button1.Text = "停止";
checkBox2.Enabled = false;
listBox1.Items.Add("接口数据完成...");
}
else
{
aTimer.Stop();
aTimer.Close();
aTimer = null;
button1.Text = "运行";
dataGrid1.DataSource = null;
listBox1.Items.Clear();
listBox1.Items.Add("系统已经停止运行...");
}
}

aTimer 的定义应该放到函数外面去
否则你点一下按钮就会有一个新的aTimer,对第一次的aTimer没有影响的。

aTimer .Enable = false;