从子窗体更新数据库后刷新数据网格视图 win 窗体

本文关键字:窗体 数据网 网格 视图 数据 win 更新 数据库 刷新 | 更新日期: 2023-09-27 18:36:23

如何在从另一种形式对数据库进行更改后刷新 DatagridView,关闭子窗体后,我尝试使用单击事件刷新数据网格视图,但它不起作用,我必须使用数据集吗?

            //create an OleDbDataAdapter to execute the query
            dAdapter = new OleDbDataAdapter(gQuery, connString);
            //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;

            //set the DataGridView DataSource
            dataGridView1.DataSource = bSource;
    private void button_Refresh_Click(object sender, EventArgs e)
    {
        dataGridView1.DataSource = bSource;
        dataGridView1.Refresh();

    }

帮帮我,请提前感谢

从子窗体更新数据库后刷新数据网格视图 win 窗体

添加

dataGridView1.Update();

它将解决您的问题。

将数据库与 DataGridView 属性中的"数据源"链接时,IDE 会自动将 BindingSource 和 TableAdapter 添加到窗体中。

如果数据库已更新,并且您想要刷新 DataGridView,请调用以下命令:

this.<table name>TableAdapter.Fill(this.<DB name>DataSet.<table name>);

其中<table name>是表的名称(例如用户),<DB name>是数据库的名称(例如 MyDB)。

this.UsersTableAdapter.Fill(this.MyDBDataSet.Users);

你试过吗

dataGridView1.DataSource = dTable;
 bSource.DataSource = dTable;
 dataGridView1.DataSource = bSource;

如果你能回忆起你的桌子会更好