首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

监测信息、线程有关问题。不能够刷新数据 . 求指点

2012-05-27 
监测信息、线程问题。。不能够刷新数据 .. 求指点修改数据 datagridview 绑定数据不刷新目的是想用线程十秒绑

监测信息、线程问题。。不能够刷新数据 .. 求指点
修改数据 datagridview 绑定数据不刷新
  目的是想用线程十秒绑定一次数据 显示状态

C# code
      private void Index_Load(object sender, EventArgs e)    {          Thread thread = new Thread(new ThreadStart(RunsOnWorkerThread));                        thread.Start();       }        //委托        private void RunsOnWorkerThread()        {            MethodInvoker mi = new MethodInvoker(dataSet1);            BeginInvoke(mi);        }        //设备提醒        void dataSet1()        {            if (AppRun)            {                dataGridView1.Rows.Clear();                string sql = " select tw.*,b.gprs_number from dbo.Temp_WaterState as tw join basis_use_water_origin_rtu as b on  tw.T_ClientID=b.clientid";                DataSet dt = DHelper.GetDataSet(sql);//帮助类                int cot = dt.Tables[0].Rows.Count;                dataGridView1.Rows.Add(cot);                for (int i = 0; i < cot; i++)                {                    // DefaultCellStyle.BackColor = Color.Red;                    dataGridView1.Rows[i].Cells["rtu"].Value = dt.Tables[0].Rows[i]["T_ClientID"] + "";                    dataGridView1.Rows[i].Cells["jcd"].Value = DHelper.getName(dt.Tables[0].Rows[i]["T_ClientID"] + "");                    dataGridView1.Rows[i].Cells["gxsj"].Value = dt.Tables[0].Rows[i]["T_Time"] + "";                    dataGridView1.Rows[i].Cells["ydkh"].Value = dt.Tables[0].Rows[i]["gprs_number"] + "";                    int kzq = Convert.ToInt32(dt.Tables[0].Rows[i]["T_EquipState"]);                    if (kzq == 0)                    {                        dataGridView1.Rows[i].Cells["kzq"].Style.BackColor = Color.Red;                    }                    dataGridView1.Rows[i].Cells["kzq"].Value = DHelper.getKZQ(kzq);// 状态。 正常还是中断                    int wl = Convert.ToInt32(dt.Tables[0].Rows[i]["T_GPRSState"]);                    if (wl == 0)                    {                        dataGridView1.Rows[i].Cells["wl"].Style.BackColor = Color.Red;                    }                    dataGridView1.Rows[i].Cells["wl"].Value = DHelper.getWL(wl);                    int gd = Convert.ToInt32(dt.Tables[0].Rows[i]["T_PowerSupply"]);                    if (gd != 1)                    {                        dataGridView1.Rows[i].Cells["gd"].Style.BackColor = Color.Red;                    }                    dataGridView1.Rows[i].Cells["gd"].Value = DHelper.getGD(gd);                    int kzg = Convert.ToInt32(dt.Tables[0].Rows[i]["T_OpenAlarm"]);                    if (kzg == 0)                    {                        dataGridView1.Rows[i].Cells["kzg"].Style.BackColor = Color.Red;                    }                    dataGridView1.Rows[i].Cells["kzg"].Value = DHelper.getM(kzg);                }                Thread.Sleep(5000);            }        }


[解决办法]
用虚模式比较好!

热点排行