GridView中数据的汇总方法

  首先,在页面添加事件<ASP:GridView OnRowDataBound="Gridview1_DataBound">

  其次,后台具体方法:

public void Gridview1_DataBound(object sender, System.Web.UI.WebControls.GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                if (((Label)e.Row.FindControl("IF_VALID")).Text.ToString().Trim() == "作废")
                {
                    e.Row.BackColor = System.Drawing.Color.LightGray;
                }

if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    string current01 = String.Format("{0:0.00}", DataBinder.Eval(e.Row.DataItem, "COST_NAME"));

switch (current01) { case "": total01 += 0; break; default: total01 += Convert.ToDouble(current01); break; }
                }

if (e.Row.RowType == DataControlRowType.Footer)
                {
                    e.Row.Cells[8].Text = "运输成本小计:";
                    e.Row.Cells[9].Text = string.Format("{0:#,##0.00}", total01);

Response.Write("<script language =‘javascript‘> window.parent.document.getElementById(‘yscb‘).value=" + total01 + ";</script> ");

Response.Write("<script language =‘javascript‘> window.parent.cal_ct_profit();</script> ");
                }

string ywcb;
                string yscb;
                string kpfy;
                double profit = 0;

ywcb = DataBinder.Eval(e.Row.DataItem, "COST_NAME").ToString();
                yscb = DataBinder.Eval(e.Row.DataItem, "COST_YUNSHU").ToString();
                kpfy = DataBinder.Eval(e.Row.DataItem, "Exhibit_amount").ToString();

switch (ywcb) { case "": profit -= 0; break; default: profit -= double.Parse(ywcb); break; }
                switch (yscb) { case "": profit -= 0; break; default: profit -= double.Parse(yscb); break; }
                switch (kpfy) { case "": profit += 0; break; default: profit += double.Parse(kpfy); break; }

e.Row.Cells[profit_column].Text = String.Format("{0:0.00}", profit);

if (profit < 0)
                {
                    e.Row.Cells[profit_column].ForeColor = System.Drawing.Color.Red;
                }

//string current01 = String.Format("{0:0}", DataBinder.Eval(e.Row.DataItem, "CARTON20_COUNT"));
                //string current02 = String.Format("{0:0}", DataBinder.Eval(e.Row.DataItem, "CARTON40_COUNT"));
                //string current03 = String.Format("{0:0}", DataBinder.Eval(e.Row.DataItem, "CARTON45_COUNT"));
                string current04 = String.Format("{0:0.00}", DataBinder.Eval(e.Row.DataItem, "COST_NAME"));
                string current05 = String.Format("{0:0.00}", DataBinder.Eval(e.Row.DataItem, "COST_YUNSHU"));
                string current06 = String.Format("{0:0.00}", DataBinder.Eval(e.Row.DataItem, "Exhibit_amount"));
                
                //switch (current01) { case "": total01 += 0; break; default: total01 += int.Parse(current01); break; }
                //switch (current02) { case "": total02 += 0; break; default: total02 += int.Parse(current02); break; }
                //switch (current03) { case "": total03 += 0; break; default: total03 += int.Parse(current03); break; }

switch (current04) { case "": total04 += 0; break; default: total04 += double.Parse(current04); break; }
                switch (current05) { case "": total05 += 0; break; default: total05 += double.Parse(current05); break; }
                switch (current06) { case "": total06 += 0; break; default: total06 += double.Parse(current06); break; }
                //total07 += profit;
            }

total00 = GridView1.Rows.Count;

ShowPageStatus(string.Format("{0:#,##0}", total00), total04, total05, total06);

}

private void ShowPageStatus(string nRecords, double ywcb, double yscb, double kpfy)
        {
            ShowTTL.Text = "总计<b><FONT color= #9C0001> " + nRecords + " </FONT></b>箱,  出车费<b><FONT color= #9C0001> " + ywcb + " </FONT></b>元,  运输费<b><FONT color= #9C0001> " + yscb + " </FONT></b>元,  亏盈金额<b><FONT color= #9C0001> " + kpfy + " </FONT></b>元";
        }

private void ShowCTTTL(double T20, double T40, double T45)
        {
            ShowCount.Text = "20尺 <b><FONT color= #9C0001> " + T20 + " </FONT></b>, 40尺 <b><FONT color= #9C0001> " + T40 + " </FONT></b>, 45尺 <b><FONT color= #9C0001> " + T45 + " </FONT></b>。";
        }

时间: 2024-11-08 11:11:41

GridView中数据的汇总方法的相关文章

Java读写Excel文件中数据的简便方法

Java开发项目中经常会碰到处理Excel文件中数据的情况,这里通过一个例子来看一下实现方法:从Excel文件orders.xls中读取订单信息,从中找出2010年1月1日(含)之后,并且SELLERID等于18的订单.找到的数据写入order_result.xls文件. Excel文件orders.xls的内容如下: ORDERID CLIENT SELLERID AMOUNT ORDERDATE 1 UJRNP 17 392 2008/11/2 15:28 2 SJCH 6 4802 200

GridVIew中下载文件的方法探讨,方法(7)最佳。

(1)使用Button下载 在GridView属性中添加: OnRowCommand="GridView1_RowCommand" 在GridView的<Column>中添加: <asp:ButtonField runat="server" Text="下载" HeaderText="下载" ButtonType="Button" CommandName="DownLoad_Cl

php获取excel表格中数据的小方法 然后就可以放到数据库了

现在又一个product.xml的表格文件,要求取出其中数据 数据如下: 商品名 价格 iphone4s 4199 note2 3999 小米2 1999 iphone5 4899 1,将product.xml另存为product.csv文件 2,用fgetcsv函数取出其中的数据放到一个数组中(fgetcsv — 从文件指针中读入一行并解析 CSV 字段) 代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2

java中读取配置文件中数据的具体方法

1.先在项目中创建一个包(如:config),再创建一个配置文件(如:a.properties),添加配置信息如下:比如 name=kaka age=28 2.代码: import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class PropertyTest {  public static void main(String[] args) {   PropertyT

JS中数据类型转换

JS中数据类型转换汇总 JS中的数据类型分为 [基本数据类型] 数字 number 字符串 string 布尔 boolean 空 null 未定义 undefined [引用数据类型] 对象 object - 普通对象 - 数组对象 (Array) - 正则对象 (RegExp) - 日期对象 (Date) - 数学函数 (Math) ... 函数 function 真实项目中,根据需求,我们往往需要把数据类型之间进行转换 把其它数据类型转换为number类型 1.发生的情况 isNaN检测的

【转载】机器学习中的相似性度量,方法汇总对比

机器学习中的相似性度量,方法汇总对比 人工智能  林  1周前 (01-10)  876℃  0评论 作者:苍梧 在做分类时常常需要估算不同样本之间的相似性度量(Similarity Measurement),这时通常采用的方法就是计算样本间的“距离”(Distance).采用什么样的方法计算距离是很讲究,甚至关系到分类的正确与否. 本文的目的就是对常用的相似性度量作一个总结. 本文目录: 1. 欧氏距离 2. 曼哈顿距离 3. 切比雪夫距离 4. 闵可夫斯基距离 5. 标准化欧氏距离 6. 马

ios中图像进行压缩方法汇总

ios中图像进行压缩方法汇总 在Iphone上有两种读取图片数据的简单方法: UIImageJPEGRepresentation和UIImagePNGRepresentation. UIImageJPEGRepresentation函数需要两个参数:图片的引用和压缩系数.而UIImagePNGRepresentation只需 要图片引用作为参数. 方法一: 代码如下: - (UIImage*)scaleFromImage:(UIImage*)image scaledToSize:(CGSize)

控制GridView中字段的长度,规范数据

前台:   <asp:GridView ID="GridView1" runat="server" OnRowDataBound="GridView1_RowDataBound"> <Columns> <asp:TemplateField> <HeaderTemplate> <input id="cb_head" type="checkbox" name

R实现大文本文件数据分组汇总的方法

使用R语言对文件数据分组汇总是很普遍的操作,但有时我们会遇到比较大的文件,这类文件的计算结果较小,但源数据太大,无法全部放入内存进行计算,只能采用分批读取.分批计算.拼合结果的办法来解决.下面用一个例子来说明R实现大文件数据分组汇总的方法. 有个1G的文件sales.txt,存储着大量订单记录,我们要对CLIENT字段分组并对AMOUNT字段汇总.该文件的列分割符为"\t",前几行数据如下: R语言解决方案     con <- file("E: \\sales.txt