首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 技术专题 | 电子书下载 | 教学视频 | 网页设计 | 平面设计 | 搜索 | 博客 | 论坛
中国IT实验室Dotnet频道
中国IT教育
首页 ASP.NET  C#  XML/WebService ADO.NET VC.NET VB.NET .NET 资讯动态 专题 RSS订阅 讨论 下载
您现在的位置: 中国IT实验室 >> Dotnet >> ADO.NET >> 文章正文

GridView中实现并列排名的例子

文章来源ChinaItLab 作者孟宪会 更新时间2007-6-15 保存本文保存本文 推荐给好友推荐给好友 收藏本页收藏本页

Access数据库版本


<!--StartFragment--><%@ Page Language="C#" AutoEventWireup="true" Debug="true" %>
<%@ Import Namespace="System.Data" %>
<script runat="server"> 
  public int TrapezoidIndex = 1;
  int LastNumer = 0;
  protected void Page_Load( object sender, EventArgs e )
  {
    //ASPNET20Book.mdb数据库参见《ASP.NET 2.0应用开发技术》一书的光盘
    string ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\ASPNET20Book.mdb;Persist Security Info=True";
    System.Data.OleDb.OleDbConnection cn = new System.Data.OleDb.OleDbConnection(ConnectionString);
    cn.Open();
    string sql = "select * from [Score] Order BY Shuxue DESC";
    System.Data.OleDb.OleDbCommand cmd = new System.Data.OleDb.OleDbCommand(sql, cn);
    System.Data.OleDb.OleDbDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
    GridView1.DataSource = dr;
    GridView1.DataBind();
    dr.Close();
    cmd.Dispose();
    cn.Dispose();
  }

  protected void GridView1_RowCreated( object sender, GridViewRowEventArgs e )
  {
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
      System.Data.Common.DbDataRecord db = (System.Data.Common.DbDataRecord)e.Row.DataItem;
      int Shuxue = Int32.Parse(db["Shuxue"].ToString());
      if (e.Row.RowIndex == 0)
      {
        LastNumer = Shuxue;
      }
      if (LastNumer != Shuxue)
      {
        TrapezoidIndex = e.Row.RowIndex + 1;
      }
      LastNumer = Shuxue;
    }
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
  <title>GridView并列排名的例子</title>
</head>
<body>
  <form id="form1" runat="server">
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" OnRowCreated="GridView1_RowCreated">
      <Columns>
        <asp:TemplateField HeaderText="数据序号">
          <ItemTemplate>
            <%#Container.DataItemIndex + 1%>
          </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="学生姓名">
          <ItemTemplate>
            <%#Eval("UserName")%>
          </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="数学">
          <ItemTemplate>
            <%#Eval("Shuxue")%>
          </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="排名">
          <ItemTemplate>
            <%#TrapezoidIndex%>
          </ItemTemplate>
        </asp:TemplateField>
      </Columns>
    </asp:GridView>
  </form>
</body>
</html>

[1] [2] 下一页  

【责编:Peng】

中国IT教育

相关产品和培训
文章评论
 友情推荐链接
 认证培训
 专题推荐

 ·关于Java框架技术专题
 ·XML全攻略技术专题
 ·JAVA开源技术介绍专题
 ·Java嵌入式开发之J2ME技术专题
 ·超前体验 Oracle 11g的5个新特性
 ·揭密使用VB.NET的五个实用技巧
 ·Oracle和SQL Server常用函数对比专题
 ·展现C#世界 C#程序设计专题
 ·Java入门 Tomcat的配置技巧精华专题
 ·Oracle RMAN物理备份技术详解
 今日更新
 社区讨论
 博客论点
 频道精选
 Dotnet频道相关导航