c# 将数据行添加到单独函数中的表中

本文关键字:函数 单独 数据 添加 | 更新日期: 2023-09-27 18:36:51

我需要在表格中添加一些"总行"。我目前用于小计的代码是:

DataRow shRow = ds.Tables[0].NewRow();
shRow["a"] = "SubHead";
shRow["b"] = "Wheel Subs";
shRow["c"] = totalWheels;
由于我需要总计和小计以及小计

,因此我必须为每个新的小计剪切并粘贴此代码(更改值)。

我想要一个函数来获取当前表和值并添加新行。像这样:

public DataRow SubRow(DataTable ResultsTable, string SubHead, string SubHeader, string SubHeadValue)

然后,这将更新主函数中的表。

感谢您的任何帮助。我只是无法将表"传递"到新函数和从新函数传递表。

c# 将数据行添加到单独函数中的表中

这有什么问题?

public DataRow SubRow(DataTable resultsTable, string subHead, string subHeader, string subHeadValue)
{
    DataRow shRow = resultsTable.NewRow();
    shRow["a"] = subHead;
    shRow["b"] = subHeader;
    shRow["c"] = subHeadValue;
    return shRow;
}

用法:

DataRow shRow = SubRow(ds.Tables[0], "SubHead", "Wheel Subs", totalWheels);

顺便说一下,这不会将行添加到表中,而只会创建一个可以适当地放入表中的行。如果你真的想把行添加到表中,你可以这样做:

DataRow row = ds.Tables[0].Rows.Add("SubHead", "Wheel Subs", totalWheels);

这会将具有给定值的行添加到数据表的 Add 方法中,并返回已添加的行。

我想要一个函数来获取当前表和 值并添加新行

public DataTable CreateNewRow(DataTable ResultsTable, String ColumnA, 
      String ColumnB, String ColumnC, String ColumnAVal, String ColumnBVal, 
      String ColumnCVal)
{
    DataRow shRow = ResultsTable.NewRow();
    shRow[ColumnA] = ColumnAVal;
    shRow[ColumnB] = ColumnBVal;
    shRow[ColumnC] = ColumnCVal;
    ResultsTable.Rows.Add(shRow);
    return ResultsTable; 
}
using(DataTable ResultsTable = CreateNewRow
                               (
                                  ds.Tables[0], 
                                  "a",
                                  "b",
                                  "c",
                                  "SubHead", 
                                  "Wheel Subs", 
                                  totalWheels
                               ))
{
      //Your logic
}