C# - 最后编辑的文本框未保存到数据库

时间:2016-12-18 04:47:58

标签: c# sql textbox save

我有一个C#程序,用于从SQL数据库进行数据输入和检索。一般来说它工作得很好,但是我正试图找到一个保存错误。它发生在这种特殊情况下。

我更新了绑定文本框中的数据。 不离开文本框我按下保存按钮。

当我这样做时,绑定文本框中的数据不会保存到SQL数据库中。

这是程序

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.Entity;
namespace Labassist2017
{
public partial class Form1 : Form
{

    //Declare entity objects
    //____________________________________________________________________________________________
    public Lab_Assistant_backendEntities Database_Backend;
    public DbSet Sample_Register;
    public DbSet Product;

    //____________________________________________________________________________________________

    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        Load_Data();
    }
    public void Load_Data()
    {
        Database_Backend = new Lab_Assistant_backendEntities();
        Sample_Register = Database_Backend.Sample_Register;
        Sample_Register.Load();
        sample_RegisterBindingSource.DataSource = Sample_Register.Local;
        Product = Database_Backend.Products;
        Product.Load();
        productBindingSource.DataSource = Product.Local;
    }
    private void Link_To_Form()
    {

    }

    private void sample_RegisterBindingNavigatorSaveItem_Click(object sender, EventArgs e)
    {
        Save();

    }
    public void Save()
    {
        Database_Backend.SaveChanges();

    }
}
}

在以下情况下保存数据。

我更新了绑定文本框中的数据。 我离开文本框然后按下保存按钮。

澄清:当我说离开时,我的意思是我按Tab键退出文本框,使其不再具有焦点。

为什么会这样?

1 个答案:

答案 0 :(得分:0)

我需要做的是在保存方法中调用.EndEdit()。