DataGridView未显示最近插入的行

时间:2015-10-09 01:18:45

标签: c# mysql winforms datagridview visual-studio-2015

我设置了一个包含三个按钮和两个DataGridViews的窗体。

项目启动时,您可以使用上面提到的三个按钮以及空白DGV1和空白DGV2。

首先,用户按下按钮1,触发输入csv文件到DGV1并显示 - 按预期工作。

用户按下第二个按钮,它将DGV1的内容保存到数据库表中。

按第三个按钮,我将DGV2绑定到刚刚添加了数据的数据库表。问题是它只显示已存在的数据,而不包括刚刚添加的新数据。要查看新数据,我必须退出然后重新启动。

这是保存按钮代码

    private void ButtonSave_Click(object sender, EventArgs e)
    {
        foreach (DataGridViewRow row in DGV1.Rows)
        {
            string constring = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\jkitc_000\Desktop\TestProjects\test2\test2\Database1.mdf;Integrated Security=True";
            using (SqlConnection con = new SqlConnection(constring))
            {
                try
                {
                    using (SqlCommand cmd = new SqlCommand("INSERT INTO TeamTable VALUES(@TeamName, @TeamMascot)", con))
                    {
                        cmd.Parameters.AddWithValue("@TeamName", row.Cells["Team"].Value);
                        cmd.Parameters.AddWithValue("@TeamMascot", row.Cells["Mascot"].Value);
                        con.Open();
                        cmd.ExecuteNonQuery();
                        con.Close();
                    }
                }
                catch (Exception ex)
                { }                    
            }
        }
    }

这是显示按钮代码

private void button1_Click(object sender, EventArgs e)
{
    DGV2.DataSource = teamTableBindingSource;  
}

1 个答案:

答案 0 :(得分:0)

请试试这个。

保存数据后,请调用以下函数。

DGV1.DataBind();
DGV2.DataBind();

希望这有帮助...

相关问题