先读出记录到dataset,然后读出汇总数据,添加到前面的dataset,最后databind

解决方案 »

  1.   

    写个SQL语句也可以阿,,
    我喜欢写存储过程所以这些都是在SQL那边构造的
      

  2.   

    你可以ds.Tables["table"].Rows.Count计算出记录的数量,取每列的值,加起来,之后用
    DataRow dr=ds.Tables["dt"].NewRow();创建一空行,这一行的列值就设置成你刚才各列加起来的值。大概是这个意思吧,你试试
      

  3.   

    给你源码
    Private total As Double = 0
        Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            '在此处放置初始化页的用户代码
            If Not Page.IsPostBack Then
                bindgrid()
            End If
        End Sub
        Sub bindgrid()
            Dim cn As SqlConnection = New SqlConnection(connection1.connstr)
            Dim da As SqlDataAdapter = New SqlDataAdapter("select top 10 customerid,freight from orders", cn)
            Dim ds As New DataSet()
            da.Fill(ds)
            DataGrid1.DataSource = ds
            DataGrid1.DataBind()    End Sub    Sub calctotal(ByVal lz As String)
            Try
                total += Double.Parse(lz)
            Catch        End Try
        End Sub    Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound
            If e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.Item Then
                calctotal(e.Item.Cells(1).Text)
                e.Item.Cells(1).Text = String.Format("{0:c}", Convert.ToDouble(e.Item.Cells(1).Text))
            ElseIf e.Item.ItemType = ListItemType.Footer Then
                e.Item.Cells(0).Text = "合计"
                e.Item.Cells(1).Text = String.Format("{0:c}", total)
            End If       
        End Sub
      

  4.   

    public void DataGrid1_ItemDataBound(object sender,System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
      if(e.Item.ItemType==ListItemType.AlternatingItem||
             e.Item.ItemType==ListItemType.Item  )
       {
    caltotal(e.Item.Cells[1].Text);
    e.Item.Cells[1].Text=string.Format("{0:c}", Convert.ToDouble    (e.Item.Cells[1].Text));
     }
    else if(e.Item.ItemType==ListItemType.Footer)
         {
     e.Item.Cells[0].Text="合计";
     e.Item.Cells[1].Text = string.Format("{0:c}", total);
          }