从DataGridView更新DataSet

时间:2015-02-16 05:17:16

标签: c# datagridview

我已经阅读了数百个线程,但无法弄清楚这一点。

设置DataGridView数据源的简单代码

try
        {
            using (SqlConnection connection = new SqlConnection(global::Saftrak.Properties.Settings.Default.TrackingConn))
            {
                using (SqlCommand command = connection.CreateCommand())
                {
                    command.CommandText = "SELECT PipeSize AS 'Pipe Size', InsulationSize AS 'Insulation Size', UnitWorkHours AS 'Unit Work Hours', LaborRate AS 'Labor Rate', UnitMaterialCost AS 'Material Cost Rate' FROM InsulationPricing WHERE InsulationTypesId = @iID";
                    command.Parameters.Clear();
                    command.Parameters.Add(new SqlParameter("iID", Globals.InsulationTypeId));

                    DataSet ds = new DataSet();
                    SqlDataAdapter da = new SqlDataAdapter(command);                     

                    da.Fill(ds);


                    grd_Insulation_Pricing.DataSource = ds.Tables[0];

                }
            }
        }
        catch (Exception Ex)
        {
            MessageBox.Show(Ex.ToString() + "\n" + "\n" + Ex.Message + " " + Ex.Data);
            return;
        }

如何在datagridview上进行用户编辑以更新到Db。我已经看到有关使用适配器的update()的事情,但是我无法在该方法之外找到适配器,所以我不能在后单元格更改事件上使用类似ds.update()的内容,因为它将超出范围。我只是不确定如何做到这一点。我确信这对某人来说是一个简单的解决方案。任何帮助将不胜感激。

谢谢,

-Joseph

--------------------------------- EDIT ------------- -----------------------

我仍然没有弄清楚......

我试过这个

Example1

和这个

Example2

并且都没有人工作。

我试过打电话

da.Update(ds);

总是得到

"名称' da'在当前背景下不存在"同样适用于' ds'。

我已经在方法之外声明了这些,以使它们可用,我没有错误,但没有任何更新。

在Kenny的回复中,我不确定我需要填写什么命令。我是否需要为datagridview创建一个完整的UPDATE sql语句。那似乎没错?

请帮忙

-Joseph

0 个答案:

没有答案