在保存数据C#Winform之后,Inventry Form没有更新自己

本文关键字:Form 更新 自己 Inventry 保存 数据 C#Winform 之后 | 更新日期: 2023-09-27 18:24:27

我想包括屏幕截图,但堆栈溢出不允许我这样做。希望我能以这种方式让你明白。在我的应用程序中,如果用户名已经存在于SQLite数据库中,我希望自动填充剩余的文本框。类似于以下代码

 private void cname_txt_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Enter)
        {
            SQLiteConnection sqliteCon = new SQLiteConnection(dbConnectionString);
            // open connection to database 
            try
            {
                sqliteCon.Open();
                string Query = "select * from OwnerDetails where Name='" + cname_txt.Text + "' ";
                SQLiteCommand createCommand = new SQLiteCommand(Query, sqliteCon);
                SQLiteDataReader dr = createCommand.ExecuteReader();
                while (dr.Read())
                {
                    string Name = dr.GetString(0);
                    string Agency = dr.GetString(1);
                    string CellNo = dr.GetString(2);
                    string Office = dr.GetString(3);
                    string Email = dr.GetString(4);
                    string Address = dr.GetString(5);
                    cname_txt.Text = Name;
                    cagency_txt.Text = Agency;
                    ccellno_txt.Text = CellNo;
                    coffice_txt.Text = Office;
                    cemail_txt.Text = Email;
                    caddress_txt.Text = Address;
               }
                sqliteCon.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

但我的应用程序没有从数据库最近的值中更新自己。我需要关闭应用程序,然后重新打开它。然后,它将在自动完成名称文本框中显示数据。我试过

this.refresh();
this.dispose();
this.hide();

几乎全部到主应用程序,但主应用程序没有刷新到新的数据库值我知道我需要在保存按钮代码中放入任何更新查询,但我无法做到这一点。您的帮助将不胜感激

在保存数据C#Winform之后,Inventry Form没有更新自己

代码看起来不错(我没有sqlite要测试)。你确定吗,线路

cname_txt.Text = Name;

真的达到了吗?可能在数据库中找不到任何内容。