private void FormrRealTime_Shown(object sender, EventArgs e)//窗口加载时启动一个定时器线程
{
Thread thread = new Thread(new ThreadStart(SetTimer));
thread.IsBackground = true;
thread.Start();
}
void SetTimer()//启动定时器后thread结束,每15秒钟执行一次refresh函数
{
System.Timers.Timer refreshpictureboxanddatagridview = new System.Timers.Timer();
refreshpictureboxanddatagridview.Interval = 15 * 1000;
refreshpictureboxanddatagridview.Elapsed += new System.Timers.ElapsedEventHandler(refresh);
refreshpictureboxanddatagridview.AutoReset = true;
refreshpictureboxanddatagridview.Enabled = true;
}
private void refresh(object source, ElapsedEventArgs e)
{
//从数据库中用oledbdataadapter读数据,然后更新datagridview的数据源
}第一次执行的时候刷新了数据,但是窗口死住了,鼠标不响应。到第三次的时候程序就在application.run()那里出错了
请问什么原因啊
如果我只从数据库中搜索表,把dataGridView1.DataSource = ds.Tables[0];这句注释掉就没事。
有这句话就不行。
这样有可能给程序造成隐患。