学会放弃

my blog is here

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

aspx文件




<%@ Page Inherits="myApp.calcTotals" Src="" %>
<!--自己改一下src-->
<html>
<body bgcolor="white">
<asp:DataGrid id="MyGrid" runat="server"
  AutoGenerateColumns
="False"
  CellPadding
="4" CellSpacing="0"
  BorderStyle
="Solid" BorderWidth="1"
  Gridlines
="None" BorderColor="Black"
  ItemStyle-Font-Name
="Verdana"
  ItemStyle-Font-Size
="9pt"
  HeaderStyle-Font-Name
="Verdana"
  HeaderStyle-Font-Size
="10pt"
  HeaderStyle-Font-Bold
="True"
  HeaderStyle-ForeColor
="White"
  HeaderStyle-BackColor
="Blue"
  FooterStyle-Font-Name
="Verdana"
  FooterStyle-Font-Size
="10pt"
  FooterStyle-Font-Bold
="True"
  FooterStyle-ForeColor
="White"
  FooterStyle-BackColor
="Blue"
  OnItemDataBound
="MyDataGrid_ItemDataBound"
  ShowFooter
="True">
<!--在footer中显示合计-->
  
<Columns>
    
<asp:BoundColumn HeaderText="Title" DataField="title" />
    
<asp:BoundColumn HeaderText="Price" DataField="price"
      ItemStyle-HorizontalAlign
="Right"
      HeaderStyle-HorizontalAlign
="Center" />
  
</Columns>
</asp:DataGrid>
</body>
</html>
下面给出vb.net和C#两种代码
vb.net
Imports System
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.HtmlControls
Imports System.Data
Imports System.Data.SqlClient

Namespace myApp

  
Public Class calcTotals : Inherits Page
  
    
Protected MyGrid As DataGrid
    
Private runningTotal As double = 0

'定义合计变量
    Private Sub CalcTotal(_price As String)
'求和
      Try
        runningTotal 
+= Double.Parse(_price)
      
Catch
        
' 空值
      End Try
    
End Sub


    
Public Sub MyDataGrid_ItemDataBound(sender As Object, e As DataGridItemEventArgs)

      
If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem 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 )

        e.Item.Cells(
0).Text="Total"
        e.Item.Cells(
1).Text = string.Format("{0:c}", runningTotal)
      
End If
    
End Sub


    
Protected Sub Page_Load(sender As object, e As EventArgs)
    
      
Dim myConnection As New SqlConnection("server=Localhost;database=pubs;uid=sa;pwd=")
      
Dim myCommand As New SqlCommand("SELECT title, price FROM Titles WHERE price > 0", myConnection)
      
      
Try

        myConnection.Open()
        MyGrid.DataSource 
= myCommand.ExecuteReader()
        MyGrid.DataBind()
        myConnection.Close()

      
Catch ex As Exception

        
' 有错误发生
        HttpContext.Current.Response.Write(ex.ToString())
      
End Try
    
End Sub

  
End Class

End Namespace

C#道理和vb.net是一样的就多做解释了
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data;
using System.Data.SqlClient;

namespace myApp
{
  
public class calcTotals : Page
  
{
    
protected DataGrid MyGrid;
    
private double runningTotal = 0;

    
private void CalcTotal(string _price)
    
{
      
try
      
{
        runningTotal 
+= Double.Parse(_price);
      }

      
catch
      
{      
      }

    }


    
public void MyDataGrid_ItemDataBound(object sender, DataGridItemEventArgs e)
    
{
      
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
      
{
        CalcTotal( 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="Total";
        e.Item.Cells[
1].Text = string.Format("{0:c}", runningTotal);
      }
  
    }


    
protected void Page_Load(object sender, EventArgs e)
    
{
      SqlConnection myConnection 
= new SqlConnection("server=Localhost;database=pubs;uid=sa;pwd=;");
      SqlCommand myCommand 
= new SqlCommand("SELECT title, price FROM Titles WHERE price > 0", myConnection);
      
      
try
      
{
        myConnection.Open();
        MyGrid.DataSource 
= myCommand.ExecuteReader();
        MyGrid.DataBind();
        myConnection.Close();
      }

      
catch(Exception ex)
      
{
        HttpContext.Current.Response.Write(ex.ToString());
      }

    }

  }

}


posted on 2006-01-16 13:21  leohuang  阅读(585)  评论(2编辑  收藏  举报