日期:2014-05-19  浏览次数:21028 次

有用过timer控件的兄弟,帮忙一下!
private   void   timer1_Tick(object   sender,   EventArgs   e)
                {
                        int   RefreshTime;
                        RefreshTime   =   (int)databasesDataSet.Tables[ "Parameter "].Rows[0][ "RefreshTime "];
                        MessageBox.Show(RefreshTime.ToString());
                }
----
上面代码测试通过,思路是:利用timer控件来定时显示出数据库里面的RefreshTime记录,当数据库里RefreshTime记录被外部程序修改时,timer控件也能在不重启程序或绑定(也就是在程序一直运行时),把修改后的新值显示出来

------解决方案--------------------
Form定义OldRefreshTime,Form载入时读取:
OldRefreshTime=Convert.ToInt32(databasesDataSet.Tables[ "Parameter "].Rows[0][ "RefreshTime "]);

private void timer1_Tick(object sender, EventArgs e)
{
int RefreshTime;
RefreshTime = (int)databasesDataSet.Tables[ "Parameter "].Rows[0][ "RefreshTime "];
if(OldRefreshTime!=RefreshTime)
{
OldRefreshTime=Timer1.Interval=RefreshTime;
MessageBox.Show(RefreshTime.ToString());
}
}
------解决方案--------------------
当数据库里RefreshTime记录被外部程序修改时,先调用this.databasesDataSet.AcceptChanges();

楼主,你想利用timer控件来定时显示出数据库里面的RefreshTime记录,用MessageBox.Show(RefreshTime.ToString());

是要用户不停地点 "确定 "的吧,难道不用点的吗??? 如果Timer1.Interval设得小的话,哈,惨!

用一个lable吧,修改数据时,先this.timer1.Enabled=false;,修改成功后,this.timer1.Enabled=true;