将两个数据行添加到第三行中

发布于 2024-10-12 16:12:07 字数 101 浏览 7 评论 0原文

是否可以在 C# 中添加两个数据行并在同一数据表的第三个数据行中获取结果? 另外,是否可以将两个数据行绑定到结果行,以便如果任何值发生更改,它都会反映在结果行中?

提前致谢

Is it possible to add two datarows and get the result in the third datarow of the same datatable in c#?
Also, is it possible to bind the two datarows to the result row so that if any values change, it is reflected in the resultant row?

Thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

云淡风轻 2024-10-19 16:12:07

编辑了与 DataTable 一起使用的响应,我再次没有'我测试了这段代码,只是把它写出来。

    public static class DataTableHandler
    {
        private const string COL_PRICE = "PriceColumn";
        private const string COL_QUANTITY = "QuantityColumn";

        public static DataTable AddTotalRow(DataTable dataTable)
        {
            int totalQuantity = 0;
            decimal totalPrice = 0.0;

            CalculateTotals(dataTable, out totalQuantity, out totalPrice);

            DataRow row = dataTable.AddRow();
            row.Cells[COL_QUANTITY].Value = totalQuantity;
            row.Cells[COL_PRICE].Value = totalPrice;

            dataTable.Rows.Add(row);
            return dataTable;
        }

        private static void CalculateTotals(DataTable dataTable, out int totalQuantity, out decimal totalPrice)
        {
            totalPrice = 0.0;
            totalQuantity = 0;

            foreach (DataRow r in dataTable.Rows)
            {
                totalPrice += (decimal)r.Cells[COL_PRICE].Value;
                totalQuantity += (int)r.Cells[COL_QUANTITY].Value;
            }
        }
   }

Edited response for use with DataTable, again I haven't tested this code just wrote it up.

    public static class DataTableHandler
    {
        private const string COL_PRICE = "PriceColumn";
        private const string COL_QUANTITY = "QuantityColumn";

        public static DataTable AddTotalRow(DataTable dataTable)
        {
            int totalQuantity = 0;
            decimal totalPrice = 0.0;

            CalculateTotals(dataTable, out totalQuantity, out totalPrice);

            DataRow row = dataTable.AddRow();
            row.Cells[COL_QUANTITY].Value = totalQuantity;
            row.Cells[COL_PRICE].Value = totalPrice;

            dataTable.Rows.Add(row);
            return dataTable;
        }

        private static void CalculateTotals(DataTable dataTable, out int totalQuantity, out decimal totalPrice)
        {
            totalPrice = 0.0;
            totalQuantity = 0;

            foreach (DataRow r in dataTable.Rows)
            {
                totalPrice += (decimal)r.Cells[COL_PRICE].Value;
                totalQuantity += (int)r.Cells[COL_QUANTITY].Value;
            }
        }
   }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文