1

嗨,我是 c# 的学生,在 winform 工作我在这里遇到问题,用新值刷新 datagridview 我有一个主窗体,其中我有一个 datagridview datagridview 中的数据填充了代码

我有第二个表单,它是从主表单上的一个按钮调用的,showdialog主表单在后面运行,第二个表单上还有一个按钮,即提交按钮。从那时起,第二个表单上有一些控件,数据被插入到数据库表中,该表连接到主表单的datagridview,所以我希望在打开第二个表单并填充数据时,然后按下提交按钮当this.hide();主窗体可见之后,提交的数据应该在我搜索过的datagridview中,发现更改数据源会导致datagridview刷新新数据,所以我尝试了这个

MAINSOFTWARE ms = new MAINSOFTWARE();
                ms.dataGridView1.DataSource = null;
                ms.dataGridView1.DataSource = ms.bindingSource1;
                this.Hide();

但它没有用新提交的数据刷新gridview,所以现在有什么方法可以刷新吗?

4

1 回答 1

2

当您应该处理原始实例时,您正在创建 MainForm 的新实例

Datatable您可以在第二个窗体中创建一个属性,并在其关闭时将其绑定DatatableDataGridViewMainForm 中。

此代码应位于按钮单击事件处理程序中的 MainForm 中:

SecondForm.ShowDialog();

//After closing the SecondForm

this.DataGridView1.DataSource = SecondForm.MyDatatable();

在 SecondForm 中声明 DataTable 属性:

private DataTable _MyDatatable = new DataTable ();

    public DataTable  MyDatatable
    {
        get {
            return _MyDatatable ; 
        }
        set { 
            _MyDatatable = value; 
        }
    }
于 2013-01-18T15:10:40.837 回答