`
ihuashao
  • 浏览: 4544921 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

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

阅读更多
大家好,这篇文章承启上一篇文章《ASP.NET分页组件学与用——教学篇》。

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

在《ASP.NET分页组件学与用——教学篇》中,我们讲解了分页组件的整个创建过程,那么在这一篇文章中,我们主要讨论一下如何使用该组件。

请按以下步骤操作:

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开发伴侣--分页组件

    二、产品特点1、ASP.Net开发伴侣——分页组件,使用简单,功能强大2、支持Sql聚合函数(sum,count,avg等)、case函数;3、支持分组分页功能,可以完成Group by、Order By 等复杂的SQL语句所实现的强大功能;4、支持...

    asp.net知识库

    深入剖析ASP.NET组件设计]一书第三章关于ASP.NET运行原理讲述的补白 asp.net 运行机制初探(httpModule加载) 利用反射来查看对象中的私有变量 关于反射中创建类型实例的两种方法 ASP.Net应用程序的多进程模型 NET委托...

    亮剑.NET深入体验与实战精要2

    操作与使用技巧 61 1.6.4 常见开发调试技巧 66 1.6.5 错误异常处理方法 70 本章常见技术面试题 76 常见面试技巧之面试前的准备 76 本章小结 77 第2章 细节决定成败 79 2.1 Equals()和运算符==的区别 80 2.2 const和...

    亮剑.NET深入体验与实战精要3

    操作与使用技巧 61 1.6.4 常见开发调试技巧 66 1.6.5 错误异常处理方法 70 本章常见技术面试题 76 常见面试技巧之面试前的准备 76 本章小结 77 第2章 细节决定成败 79 2.1 Equals()和运算符==的区别 80 2.2 const和...

    ASP.NET开发实战1200例(第Ⅰ卷)第十二章

    实例312 用WebBrowser组件的execWB方法 进行打印 491 实例313 利用JavaScript获取焦点并且打印 框架中内容 492 实例314 智能放大或者缩小图片后进行打印 494 实例315 清空或恢复打印页面中的页眉和页脚 495 实例316...

    仿世纪佳缘婚介交友系统5.3 ASP+SQL

    2、组件要求:Jmail邮件组件、aspjpeg水印组件、上传组件(aspupload组件)、FSO读写权限(IIS_IUSRS,IUSR帐号读写)、ADODB.Stream组件。一般的虚拟主机都有这些组件,如果是本地调试必须先检查一下IIS的设置环境...

    JAVA上百实例源码以及开源项目源代码

    得到RSA密钥对,产生Signature对象,对用私钥对信息(info)签名,用指定算法产生签名对象,用私钥初始化签名对象,将待签名的数据传送给签名对象(须在初始化之后),用公钥验证签名结果,使用公钥初始化签名对象,用于...

    Roclog 个人博客系统 v5.0.23.0开源

    1.取消外部压缩组件,使用Winrar压缩(协力解决中,如发现有不正常状况请停止使用并采用人工方式操作) 2.后台模板文件编辑识别*.js及其它文本文件 3.相关文章函数重新设计 4.密码文章的入口方式变更 5.搜索方式和...

    基于J2EE框架的个人博客系统项目毕业设计论文(源码和论文)

    而JSP的组件是用Java开发的,可以直接使用; 4、一次编写,处处运行:作为JAVA开发平台的一部分,JSP具有JAVA的所有优点,包括Write once , Run everywhere. 3.2. 数据库的选择 3.2.1. Web应用程序开发环境—SQL...

    JAVA上百实例源码以及开源项目

    得到RSA密钥对,产生Signature对象,对用私钥对信息(info)签名,用指定算法产生签名对象,用私钥初始化签名对象,将待签名的数据传送给签名对象(须在初始化之后),用公钥验证签名结果,使用公钥初始化签名对象,用于...

Global site tag (gtag.js) - Google Analytics