zoukankan      html  css  js  c++  java
  • GridView添加统计(合计)行

    前提:设置属性ShowFooter="True"

    方法一:使用SQL查询统计出合计值,在绑定GridView时让其结果赋于一个DataTable(全局变量),然后在RowDataBound事件中

    if (e.Row.RowType == DataControlRowType.Footer)
            
    {
                e.Row.Cells[
    0].Text = "合计";
                e.Row.Cells[
    3].Text = dtSum.Rows[0][0].ToString();
                e.Row.Cells[
    4].Text = dtSum.Rows[0][1].ToString();
                e.Row.Cells[
    5].Text = dtSum.Rows[0][2].ToString();
                e.Row.Cells[
    6].Text = dtSum.Rows[0][3].ToString();
                e.Row.Cells[
    7].Text = dtSum.Rows[0][4].ToString();
                e.Row.Cells[
    8].Text = dtSum.Rows[0][5].ToString();
                e.Row.Cells[
    9].Text = dtSum.Rows[0][6].ToString();
                e.Row.Cells[
    10].Text = dtSum.Rows[0][7].ToString();
                e.Row.Cells[
    11].Text = dtSum.Rows[0][8].ToString();
            }

    其中dtSum是那个全局DataTable,在绑定GridView同时将SQL查询的结果赋给它;效果如下:


    方法二、直接把对应列每一行的值相加(不做数据查询,在RowDataBound事件中运算)

        int mysum1 = 0;
        
    int mysum2 = 0;
        
    protected void GridList_RowDataBound(object sender, GridViewRowEventArgs e)
        
    {
            
    if (e.Row.RowType == DataControlRowType.DataRow )
            
    {
                DataRowView myrows
    =(DataRowView)e.Row.DataItem;
                mysum1 
    +=Convert .ToInt32 (myrows[2].ToString ());
                mysum2 
    += Convert.ToInt32(myrows[3].ToString());
            }

            
    // 合计
            if (e.Row.RowType == DataControlRowType.Footer)
            
    {
                e.Row.Cells[
    0].Text = "合计";
                e.Row.Cells[
    1].Text = mysum1.ToString();
                e.Row.Cells[
    2].Text = mysum2.ToString();
            }

        }
  • 相关阅读:
    LINUX 下编译不通过解答
    线程与进程
    机房收费系统之报表总结2
    【android开发】10款实用的Android UI工具,非常有用!
    EMPTY表示元素不能包含文本,也不能包含子元素
    ResultSet是结果集对象
    如果没有指定Cookie的时效,那么默认的时效是。(选择1项)
    用于调用存储过程的对象是。(选择1项)
    Statement和PreparedStatement都是用来发送和执行SQL语句的
    DTD与XML Schema都是XML文档。(选择1项)
  • 原文地址:https://www.cnblogs.com/chy710/p/690251.html
Copyright © 2011-2022 走看看