2

我正在使用此代码在访问数据库中更新数据后更新我的数据网格视图。数据每秒更新一次,我将此代码保持在后台循环中,但是当我启动后台时,正在显示一个大 X。

  try
        {
            OleDbDataAdapter dAdapter;
            OleDbCommandBuilder cBuilder;
            DataTable dTable;
            BindingSource bSource = new BindingSource();
        dAdapter = new OleDbDataAdapter("Select * from data", cls_rt.con);

        //create a command builder
        cBuilder = new OleDbCommandBuilder(dAdapter);

        //create a DataTable to hold the query results
        dTable = new DataTable();

        //fill the DataTable
        dAdapter.Fill(dTable);


        //BindingSource to sync DataTable and DataGridView
        bSource = new BindingSource();

        //set the BindingSource DataSource
        bSource.DataSource = dTable;

        DataGridView.DataSource = dTable;
        }
        catch (Exception)
        {

        }

然后我使用了这段代码

        try
        {
            this.dataTableAdapter.Fill(this.rTDataSet.data);
        }

并保持循环

        dataDataGridView.Update();

然后

        dataDataGridView.Refresh();

然后

        dataDataGridView.RefreshEdit();

但它对我有用

我希望我的datagridview每秒更新一次,当它更新时还有一件事我不希望整个gridview更新我只想更新特定的单元格。

如果有人可以帮助我,他们将不胜感激。

提前致谢。

4

1 回答 1

3

几乎所有 datagridview 的刷新/更新值都会将您发送到相同的方式..以这种方式“刷新”您的 dgv 最简单的方法是在您需要刷新值时放置此行

yourDataGridview.DataSource = yourDataRetrievingMethod  // in your situation your dataset and/or table
于 2012-06-18T09:16:10.817 回答