更新或插入另一个表单时,C#刷新DataGridView

我有两种形式,形式A和形式B,

表单A允许用户插入和更新学生信息.

表单b只是一个DataGridView和按钮.

当我在表单A上插入学生时,我转到表单B,新学生没有在DataGridView上显示,如果我重新运行该程序,新学生将出现在表单B中.

我尝试在表格b上使用此按钮

datagridview1.refresh();
datagridview1.update();

但它仍然无法正常工作.

编辑:

我的插入工人的代码

cmd = new OleDbCommand("insert into FWINFOS (ID,Name,Gender,DateOfBirth,Race,WorkingPlace,PassportNO,DateOfExpire,[Position],Photo) values('" + textBox5.Text + "','" + textBox1.Text + "','" + textBox2.Text + "','" + dateTimePicker1.Value + "','" + textBox3.Text + "','" + textBox4.Text + "','" + textBox6.Text + "','" + dateTimePicker2.Value + "',@Position,@Photo)",con);


        cmd.Parameters.AddWithValue("@Position",comboBox1.SelectedText.ToString());
        conv_photo();

        con.Open();
        int n = cmd.ExecuteNonQuery();
        //cmd.ExecuteNonQuery();
        con.Close();
        if (n > 0)
        {
            MessageBox.Show("Inserted");
            loaddata();

            rno++;
        }
        else
            MessageBox.Show("No Insert");



    }

插入新worker时,我的Datagridview1(Form2)不会自动更新.但是,如果我重新运行该应用程序,则会出现新工作人员.

解决方法

// Form A
public void loaddata()
{
    //do what you do in load data in order to update data in datagrid
}

然后在表格B上定义:

// Form B
FormA obj = (FormA)Application.OpenForms["FormA"];

private void button1_Click(object sender,EventArgs e)
{
    obj.loaddata();
    datagridview1.Update();
    datagridview1.Refresh();
}

相关文章

操作步骤 1、进入elasticsearch的plugin,进入ik。进入config。 2、在config下面建立以.dic为后缀的字典...
lengend data数据中若存在'',则表示换行,用''切割。
代码实现 option = { backgroundColor: '#080b30', tooltip: { trigger: &...
问题原因 原因在于直接在js中取的变量并复制给var变量。 于是就变成这样。 解决办法 var data = &#...
前言 最近做了一个调查问卷导出的功能,需求是将维护的题目,答案,导出成word,参考了几种方案之后,选...
对于很多人来说,用字符编码都是熟能生巧,而不清楚为什么是那样的字符编码,所以我在这列了一个表,翻...