ASP.NET分页组件学与用——使用篇

原创 2005年05月06日 14:25:00
在这一篇文章中,我们主要讨论一下如何使用分页组件。

 

       请按以下步骤操作:

1、  创建一个WEB应用程序工程。

 

2、  将上篇文章中生成的组件添加到工具箱中。如果您不知道添加的过程,请参考文章《ASP.NET组件编程step by step

 

 

3、  在默认的WEB窗体页面中,切换到HTML视图,把下列HTML代码复制到<form>标签中。

<div align="center">

                            <center>

                                   <table border="0" cellpadding="0" cellspacing="0" width="756" height="155" style="FONT-SIZE:12px">

                                          <tr>

                                                 <td width="756" height="23">分页控件的使用实例</td>

                                          </tr>

                                          <tr>

                                                 <td width="756" height="110" valign="top" align="center" runat="server" id="myHtml"></td>

                                          </tr>

                                          <tr>

                                                 <td width="756" height="22">

                                                 </td>

                                          </tr>

                                   </table>

                            </center>

                     </div>

 

4、  HTML代码生成一个三行一列的表格,从工具箱将控件拖到该表格的第三行中。

 

5、  private void Page_Load(object sender, System.EventArgs e)事件处理程序中添加如下代码:

int cp;

            if(this.Request.Params["currentPage"] == null)

            {

                cp = 1;

            }

            else

            {

                cp = Convert.ToInt32(this.Request.Params["currentPage"]);

            }

 

            SqlConnection con = new SqlConnection("server=accp-lzh;uid=sa;pwd=sasa;database=Northwind");

            SqlCommand cmd = new SqlCommand("select * from [Order Details]",con);

            SqlDataAdapter adapter = new SqlDataAdapter();

            adapter.SelectCommand = cmd;

            DataSet ds = new DataSet();

            con.Open();

            adapter.Fill(ds,"table");

            con.Close();

           

            DataTable dt = new DataTable();

            dt = ds.Tables["table"];

            //以下设置控件参数

            this.LzhPages1.AllCount = dt.Rows.Count;//总记录条数

            this.LzhPages1.CurrentPage = cp;//当前页,从URL中读取

            this.LzhPages1.ShowPages = 10;//导航数字个数

            this.LzhPages1.Count = 10;//每页显示的记录条数

 

            StringBuilder sql = new StringBuilder();

            //以下三个字符串最终组合成一个完整的表格<table>

            string htmlHeader = "";//<table>标签

            string htmlBody = "";//中间有若干个<tr>标签,即行

            string htmlFoot = "";//</table>标签

 

            sql.AppendFormat("select top {0} * from [Order Details] where 1=1 and OrderID not in (select top {1} OrderID from [Order Details] where 1=1 order by OrderID desc) order by OrderID desc",this.LzhPages1.Count,this.LzhPages1.CurrentPage * this.LzhPages1.Count);

            SqlCommand cmd1 = new SqlCommand(sql.ToString(),con);

            adapter.SelectCommand = cmd1;

            con.Open();

            adapter.Fill(ds,"table1");

            con.Close();

 

            dt= ds.Tables["table1"];

            htmlHeader =  "<table style='font-size:12px' border='1' cellpadding='0' cellspacing='0' width='100%' bordercolor='#008000' bordercolorlight='#008000' bordercolordark='#FFFFFF'>/n";

            

            for(int i = 0;i < dt.Rows.Count ;i ++)

            {

                htmlBody = htmlBody + String.Format("<tr>/n<td width='12%'>{0}</td>/n<td width='43%'>{1}</td>/n<td width='24%'>{2}</td><td width='21%'>{3}</td>/n</tr>/n",dt.Rows[i][0].ToString(),dt.Rows[i][1].ToString(),dt.Rows[i][2].ToString(),dt.Rows[i][3].ToString());

            }

            htmlFoot = "</table>/n";

 

        this.myHtml.InnerHtml = htmlHeader + htmlBody + htmlFoot;

 

6、  sql.AppendFormat("select top {0} * from [Order Details] where 1=1 and OrderID not in (select top {1} OrderID from [Order Details] where 1=1 order by OrderID desc) order by OrderID desc",this.LzhPages1.Count,this.LzhPages1.CurrentPage * this.LzhPages1.Count);此语句中的SQL语句就是用来分页的,我们的控件只是用来控制页面,数据还得通过SQL语句或存储过程读取。

 

7、  结果图:

 

ASP.NET MVC分页组件MvcPager 2.0版发布暨网站全新改版

MvcPager分页控件是在ASP.NET MVC Web应用程序中实现分页功能的一系列扩展方法,该分页控件的最初的实现方法借鉴了网上流行的部分源代码, 尤其是ScottGu的PagedList类和相...

Pager ASP.NET分页组件 2.0

  • 2009年04月03日 22:46
  • 427KB
  • 下载

Pager ASP.NET分页组件

  • 2009年04月03日 21:00
  • 415KB
  • 下载

基于asp.net + easyui框架,一步步学习easyui-datagrid——实现分页和搜索(二)

上篇博客我只是将界面的部分完成了,继续上篇博客的内容,这篇博客我们需要将数据库中的记录显示到界面上,并实现数据的分页显示。 曾经我写过分页的博客,分页很简单, 本质区别在于分页时从数据...

ASP.NET分页组件

  • 2009年04月09日 17:45
  • 478KB
  • 下载

pager2.0(asp.net分页组件)

  • 2012年11月15日 13:22
  • 437KB
  • 下载

ASP.NET——真假分页

进行网页设计时,我们经常会接触到分页技术。所谓分页,就是把所有要显示的内容分成n多页来显示。那为什么要用分页而不直接全部显示呢?这就好比一本书,我们可以用一张纸写完全部书的内容,但实际上并不是这么做的...

ASP.NET网站权限设计实现——套用JQuery EasyUI列表显示数据、分页、查询

有时候闲的无聊,看到extjs那么肥大,真想把自己的项目改了,最近看到一款轻型的UI感觉不错,但是在网上找了好多教程,但是没有一个是完全是C#asp.net写的 无耐下,自己写了下,感觉效果不错,故...

ASP.NET网站权限设计实现——套用JQuery EasyUI列表显示数据、分页、查询

有时候闲的无聊,看到extjs那么肥大,真想把自己的项目改了,最近看到一款轻型的UI感觉不错,但是在网上找了好多教程,但是没有一个是完全是C#asp.net写的 无耐下,自己写了下,感觉效果不错,故...

我要学ASP.NET MVC 3.0(十六): MVC 3.0 实例系列之表格数据的分页

概述       上节我们学习了如何在MVC 3应用程序中实现一个简单表格并在表格之中加上了排序的表头,使我们的表格在使用起了更加人性化,这些都是使用了MVC 3.0的相关特性来完成的。 我们在...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ASP.NET分页组件学与用——使用篇
举报原因:
原因补充:

(最多只允许输入30个字)