c#中datagridview中的新求和行

时间:2012-05-07 07:05:10

标签: c# sql-server c#-4.0

  

可能重复:
  Sum of column values in C#

我使用以下代码查看新行中求和的结果。我有三列。 (SportID)(SportName)(费用)。我想在费用栏下的新行中显示费用总和。但它会遇到问题。请帮我解决一下。 任何帮助将不胜感激

    int sum = 0;

for (int i = 0; i < dt.Rows.Count - 1; i++)
{
    sum += int.Parse(dataGridView1.Rows[i].Cells["Fee"].Value.ToString());
}

DataSet ds = new DataSet();
adapter.Fill(ds);

DataRow row = ds.Tables["Entry"].NewRow();
row[0] = "";
row[1] = "";
row[2] = sum;
ds.Tables["Entry"].Rows.Add(row);

3 个答案:

答案 0 :(得分:0)

我认为这一行应该是:

DataRow row = ds.Tables[0].NewRow();
-------
ds.Tables[0].Rows.Add(row);

或添加以下行:

ds.Tables[0].TableName="Entry";

答案 1 :(得分:0)

您将在以下行获得例外:

DataRow row = ds.Tables["Entry"].NewRow();

可能是因为你的ds没有任何表,或者表的名称不同。设置断点并在可视化调试器中查看数据集或尝试访问索引为

的表
DataRow row = ds.Tables[0].NewRow(); //assuming you have table on 0 index

您还可以查看

if(ds.Tables.Count > 0)

答案 2 :(得分:0)

我是否在您的数据集中显示表条目

DataRow row = ds.Tables["Entry"].NewRow();

您可以通过检查数据集中是否存在表格来避免异常

if(ds.Tables["Entry"] != null)

在访问之前,您应该添加名为条目的表格。如果您不知道该名称,则可以使用其索引访问该表。

DataRow row = ds.Tables[0].NewRow();