gridview列相加问题

问题描述

asp.net中gridview是分页的,现在需要对gridview的某一列的所有的数据进行相加,比如第9列数据是金额,以小数显示的,相加之后的结果要显示在最后的翻页中的最后一行,代码应该怎么写?protectedvoidGridView1_RowDataBound1(objectsender,GridViewRowEventArgse){GridView1.ShowFooter=true;for(inti=0;i<GridView1.Rows.Count;i++){sum+=Convert.ToDecimal(GridView1.Rows[i].Cells[9].Text.ToString());}if(e.Row.RowType==DataControlRowType.Footer){e.Row.Cells[1].Text="合计";e.Row.Cells[9].Text=sum.ToString();}}

我这样的代码写出来的是gridview的每一页的最后一行都会出现一个合计,而且合计的结果还不对,应该怎么改呢?

解决方案

解决方案二:
引用楼主tyfandkhr的回复:

for(inti=0;i<GridView1.Rows.Count;i++){sum+=Convert.ToDecimal(GridView1.Rows[i].Cells[9].Text.ToString());}

在RowDataBound事件里面,统计每行的值,怎么可能成功呢,一边绑,然后,你还要计算总计?!在指定GridView的DataSource,执行绑定方法的下方,遍历绑定的DataTable,然后,得到统计值,在操作GridView的Foot列,显示统计值。
解决方案三:
引用1楼lisliefor的回复:

引用楼主tyfandkhr的回复:for(inti=0;i<GridView1.Rows.Count;i++){sum+=Convert.ToDecimal(GridView1.Rows[i].Cells[9].Text.ToString());}在RowDataBound事件里面,统计每行的值,怎么可能成功呢,一边绑,然后,你还要计……

执行绑定方法的下方,遍历绑定的DataTable?什么意思?能说清楚具体代码怎么写吗?
解决方案四:
这是我刚刚发现的网页
解决方案五:
//查询数据,获得DataTabledtGridView1.DataSource=dt;GridView1.DataBind();decimalsum=0;foreach(DataRowrowindt.Rows){sum+=Convert.ToDecimal(row["Price"]==null?"0":row["Price"].ToString());}GridView1.FooterRow.Cells[1].Text="合计";GridView1.FooterRow.Cells[9].Text=Decimal.Round(sum,2)+"";//保留两位小数

解决方案六:
引用4楼lisliefor的回复:

C#code//查询数据,获得DataTabledtGridView1.DataSource=dt;GridView1.DataBind();decimalsum=0;foreach(DataRowrowindt.Rows){sum+=Convert.ToDecimal……

这个应该写在什么方法里呢?
解决方案七:

解决方案八:
现在已经能求出来每页的某列的所有值的总和,但是显示的时候每页下面都会显示,如果我想只在最后一页的最下面显示,应该怎么做呢?
解决方案九:
操作datatable吧DataTabledt=Lansoft.GetDt(strDateS,strDateE);DataRowdr=dt.NewRow();//建立dt对象的新行dr[0]="合计:";//新行的第一个单元格内容是合计for(inti=1;i<dt.Columns.Count;i++){//循环列floatsum=0;for(intj=0;j<dt.Rows.Count;j++){//循环行sum+=float.Parse(dt.Rows[j][i].ToString());}dr[i]=sum;//加入结果}dt.Rows.Add(dr);//新行添加到dt里

解决方案十:
别用gridview,太难用了,用datalist呵呵

时间: 2024-10-23 01:12:15

gridview列相加问题的相关文章

datagrid如何实现两列相加

问题描述 datagrid如何实现两列相加 解决方案 解决方案二:如果两列皆为数字的话,可以相加的.for(inti=0;i<datagrid.rows.count;i++){datagrid.row[i].cells["相加结果保存列"].value+=datagrid.rows[i].cells["你想相加的另外一列"]:}如果是数据绑定的模式也可以在datatable中使用循环相加,然后再帮当到datagrid中.解决方案三:如果两列皆为数字的话,可以相

wpf columnwidth设为auto 其中的gridview列宽会有问题

问题描述 wpf columnwidth设为auto 其中的gridview列宽会有问题 本人wpf小菜鸟 而且刚注册论坛没有币 还望各位大神帮帮忙 如图 三列的每一列我都想width =auto,但是gridview的列宽就变成这样了.问题出在哪里呢?应该怎么处理 <Grid Name=""MainGrid""> <Grid.ColumnDefinitions> <ColumnDefinition Width=""

gridview列宽怎么可以拖动啊

问题描述 gridview列宽怎么可以拖动让它变宽啊? 解决方案 解决方案二:楼主直接设置宽度就可以了,拖动也是可以的.如果怎么拖,那看你的鼠标了解决方案三:直接设置宽度的话那固定了,就象Winform里面的GridView一样,列宽可以拖动啊!解决方案四:到web版javascript版块搜索解决方案五:地址是多少啊?解决方案六:你上孟子E章的空间.它里面有完整的东西.datagrid列和行都可以拖动的..

GridView列数字、货币和日期的显示格式

形式 语法 结果 注释 数字 {0:N2} 12.36 数字 {0:N0} 13 货币 {0:c2} $12.36 货币 {0:c4} $12.3656 货币 "¥{0:N2}" ¥12.36 科学计数法 {0:E3} 1.23E+001 百分数 {0:P} 12.25% P and p present the same. 日期 {0:D} 2006年11月25日 日期 {0:d} 2006-11-25 日期 {0:f} 2006年11月25日 10:30 日期 {0:F} 2006年

几种方法固定.net gridview列宽

1.在编辑列里面,直接就有设置列宽度的!如果你不想单元格的内容把单元格撑大,那么就加一个样式 <style>table{table-layout:fixed}</style>,意思就是每列都固定为最初设置的样式,不再变化,超出的部分隐藏 2.可以设置gridview中编辑列下面的某一列的属性<HeaderStyle Width="8%"></HeaderStyle>,这样可以得到按屏幕的百分之多少显示 3.你这个肯定是设置了gridvie

求解,各位大虾帮帮忙!gridview列嵌套的问题。。

问题描述 有一个gridview,没有绑定数据源,只有一列药品名称,但是这一列是下拉框,点击这一列,就会增加一列,然后出现下拉框,里面是药品名称供选择~! 解决方案 本帖最后由 feecity 于 2012-04-20 15:27:18 编辑

DevExpress GridView 列标题点击事件

GridView有RowCellClick事件,即单元格点击事件,但是针对列标题行以及列标题单元格却没有相应的事件. 在这里使用GridView的MouseDown事件.这里同样使用的是GridHitInfo来获取点击位置的信息,来判断是否在列标题上.GridHitInfo根据鼠标点击的x.y坐标获取该点的相关信息,判断是否点击在列标题行内. private void gridView_MouseDown(object sender, MouseEventArgs e) { //鼠标左键点击 i

asp.net gridview列宽固定的几种方法介绍_实用技巧

1.在编辑列里面,直接就有设置列宽度的!如果你不想单元格的内容把单元格撑大,那么就加一个样式<style>table{table-layout:fixed}</style>,意思就是每列都固定为最初设置的样式,不再变化,超出的部分隐藏 2.可以设置gridview中编辑列下面的某一列的属性<HeaderStyle Width="8%"></HeaderStyle>,这样可以得到按屏幕的百分之多少显示 3.你这个肯定是设置了gridview

GridView列怎么不能隐藏呢,出现奇怪错误!

问题描述 我有一GridView,是通过一按钮事件,动态绑定数据的,步骤如下:1.点击按钮,激发事件2.按钮Click事件调用一方法a,方法a调用存储过程,从数据库中获得数据,然后方法a返回一DataSet,3.将GridView.DataSource制定为返回的DataSet,然后GridView.Bind()问题是:GridView数据绑定后,在GridView能够看到返回的所有数据,由于返回的字段较多,我想隐藏一些字段.我是这样隐藏的:GridView.Columns[0].Visable