有以下数据:A   Type   Amount
1     1      100
2     2      200
要实现:
A   Type   Amount
1     1      100
2     2      200
合计         300

解决方案 »

  1.   

    用sql,
    seelct A,Type,Amount,count(amount) as total from **
    动态创建datagrid列,
    <asp:BoundColumn DataField="a" HeaderText="a"></asp:BoundColumn>
    ...
    <asp:BoundColumn DataField="total" HeaderText="总计"></asp:BoundColumn>
      

  2.   

    To delectation(我是一只小小鸟)
    估计楼主要的不是你设计的吧,你的每行都显示总和,他要的时列显示总和在页脚
      

  3.   

    我想也是,感覺asp.net沒有asp容易操作
      

  4.   

    设一个变量x
    在dataitembind中
    x+=int.phase(e.item.cells[5].text);
    然后在页脚显示此变量就可了
      

  5.   

    在页面尾部放一个Label,用Label显示出总和来
      

  6.   

    我觉得这样恐怕求不出来!x+=int.phase(e.item.cells[5].text);
      

  7.   

    求和总知道吧,就是一个循环了
    假如用的是DataGrid
    for(int i=0;i<DataGrid.Items.Count;i++)
    {
      double aa = aa++;
    }
    Label.Text = aa.ToString();
      

  8.   

    不对
    for(int i=0;i<DataGrid.Items.Count;i++)
    {
      double aa += int.Parse(DataGrid.Items[i].toString());
    }
    Label.Text = aa.ToString();
      

  9.   

    不对
    for(int i=0;i<DataGrid.Items.Count;i++)
    {
      double aa += int.Parse(DataGrid.Items[i].toString());
    }
    Label.Text = aa.ToString();
      

  10.   

    给你一个我试验过的
    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    int dd = 0;
    for(int i= 0;i<DataGrid1.Items.Count;i++)
    {
    dd += int.Parse(DataGrid1.Items[i].Cells[6].Text.ToString());
    }
    DataGrid1.Columns[6].FooterText = dd.ToString();
    }
    页脚要显示才行