protected string GetColumnTotal() { decimal columnTotal = 0; for (int i = 0; i < gridView.Rows.Count; i++) { columnTotal += Convert.ToDecimal(gridView.Rows[i].Cells[columnIndex].Text); } return columnTotal.ToString(); }
protected void gridView_DataBound(object sender, EventArgs e) { for (int i = 0; i < gridView.Columns.Count; i++) { if (i != columnIndex) // 略过模板列 { decimal columnTotal = Convert.ToDecimal(GetColumnTotal()); for (int j = 0; j < gridView.Rows.Count; j++) { decimal cellValue = Convert.ToDecimal(gridView.Rows[j].Cells[i].Text); gridView.Rows[j].Cells[i].Text = (cellValue / columnTotal).ToString(); } } } }
其中,columnIndex是模板列的索引值,应该在GridView中进行设置。此外,需要在GridView中绑定DataBound事件,例如:
这样,就可以在GridView中显示每列的平均值,通过将每列除以该列的总和实现。