0

当我编辑我DataGridView的单元格时,我想立即更新我的 MSSQL 数据库。我添加了一个CellEndEdit' event handler. Also I added autogenerated bindingsource andTableAdapter`。

它工作正常,但每当我想编辑我的值时,我都会收到错误消息。实际上,我用SqlDataAdapter. 但这次我使用自动生成的TableAdapter. 我不知道该怎么办。我试试这个,但我得到了一个错误。

注意: DataSet11,loginTableAdapterBindingsource1是自动生成和工作的。

private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
   SqlCommandBuilder querybuilder = new SqlCommandBuilder(loginTableAdapter);
   querybuilder.GetUpdateCommand();
   loginTableAdapter.Update(dataset11);
}
4

1 回答 1

0
        private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
        {
            if (dataGridView1.IsCurrentCellDirty)
            {
                SqlCommandBuilder querybuilder = new SqlCommandBuilder(loginTableAdapter);
                querybuilder.GetUpdateCommand();
                loginTableAdapter.Update(dataset11);
            }
        }

        //or if you has a bindingSource
        private void bindingSource1_CurrentItemChanged(object sender, EventArgs e)
        {
            if (dataGridView1.IsCurrentCellDirty)
            {
                SqlCommandBuilder querybuilder = new SqlCommandBuilder(loginTableAdapter);
                querybuilder.GetUpdateCommand();
                loginTableAdapter.Update(dataset11);
            }
        }
于 2013-01-15T16:22:52.710 回答