我试图让我的datagridview刷新计时器,但无法弄清楚

我做了很多谷歌搜索和YouTube视频,找不到解决方法。

private void Timer1_Tick(object sender, EventArgs e)
        {
            FillDataGridView();
        }
        private void FillDataGridView()
        {
            DataSet objDs = new DataSet();
            MySqlConnection con = new MySqlConnection(ConfigurationManager.ConnectionStrings["con2"].ConnectionString);
            MySqlDataAdapter myCommand;
            string select = "select * from CadCall";
            myCommand = new MySqlDataAdapter(select, con);
            myCommand.SelectCommand.CommandType = CommandType.Text;
            con.Open();
            myCommand.Fill(objDs);
            dataGridView2.DataSource = objDs;
            dataGridView2.Update();
            dataGridView2.Refresh();

        }


最后,我希望当计时器达到0(每100毫秒)时刷新datagridview

最佳答案

我想您可能会后悔这么短的刷新间隔。将其设置为10秒钟,然后别忘了关闭/处置连接,否则程序将很快崩溃。不需要更新和刷新调用

数据集是数据表的集合,而datagridview旨在仅显示一个表的内容。因此,如果未设置DataMember属性,则数据集不能成为datagridview的数据源,而且我不确定自己的表名是什么,所以我建议您将数据源设置为数据集中的表之一,或者使用数据表而不是数据集:

DataTable objDT = new DataTable();
datagridview2.DataSource = objDT;

OR

DataSet objDs = new DataSet();
datagridview2.DataSource = objDS.Tables[0];


哦,请确保您确实启用了计时器;默认情况下启用它们= false

关于c# - 获取datagridview刷新计时器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57131129/

10-14 13:04