/// <summary>
/// 计算Dgv 合计
/// </summary>
/// <param name="dgv"></param>
/// <param name="columns">需要计算的列名称 列表</param>
/// <returns>对应的列 合计</returns>
public static List<double> GetDgvTotal(DataGridView dgv, List<string> columns)
{
List<double> res = new List<double>();
foreach (string s in columns)
{
double d = 0.00;
foreach (DataGridViewRow dgr in dgv.Rows)
{
d += Convert.ToDouble(dgr.Cells[s].Value.ToString());
}
res.Add(d);
}
return res;
}
合计二:
/// <summary>
/// 计算Dgv 合计 使用方法:
/// List<string> cols = new List<string>();
/// cols.Add("金额");
/// cols.Add("现金");
/// dt = GetDgvTotal(dt, cols);
/// </summary>
/// <param name="dt">需要处理的DataTable</param>
/// <param name="columns">需要计算的列名称 列表</param>
/// <returns>包含合计的datatable</returns>
public static DataTable GetDgvTotal(DataTable dt, List<string> columns)
{
DataRow newDr = dt.NewRow();
foreach (string s in columns)
{
double d = 0.00;
foreach (DataRow dgr in dt.Rows)
{
if (dgr[s] != null)
if (dgr[s].ToString() != "")
d += Convert.ToDouble(dgr[s].ToString());
}
newDr[s] = d.ToString();
}
dt.Rows.Add(newDr);
return dt;
}