qq信箱登陆-css半透明

repeater分页
2023年4月3日发(作者:360驱动大师官方下载)

1

AspNetPager7.2分页控件使用详细说明(一)

2009-04-1608:14

一、AspNetPager7.2分页控件简介

分页是Web应用程序中最常用到的功能之一,在中,虽然自带了一个可以分页的DataGrid

(1.1)和GridView(2.0)控件,但其分页功能并不尽如人意,如可定制性差、无法通过

Url实现分页功能等,而且有时候我们需要对DataList和Repeater甚至自定义数据绑定控件进行分页,

手工编写分页代码不但技术难度大、任务繁琐而且代码重用率极低,因此分页已成为许多程

序员最头疼的问题之一。

AspNetPager针对分页控件的不足,提出了与众不同的解决中分页问题的方案,即将

分页导航功能与数据显示功能完全独立开来,由用户自己控制数据的获取及显示方式,因此可以被灵活

地应用于任何需要实现分页导航功能的地方,如为GridView、DataList以及Repeater等数据绑定控件实

现分页、呈现自定义的分页数据以及制作图片浏览程序等,因为AspNetPager控件和数据是独立的,因

此要分页的数据可以来自任何数据源,如SQLServer、Oracle、Access、mysql、DB2等数据库以及XML

文件、内存数据或缓存中的数据、文件系统等等。

AspNetPager7.2版发布

新增属性PagingButtonLayoutType,可设置分页导航元素(数字页索引、上页、下页、首页和尾页)的

布局方式,该属性值是一个PagingButtonLayoutType枚举,通过设置该属性为

redList或,允许将这些分页导航元素包含

  • 标签之间,以便于为这些分页元素应用CSS样式。

    新增PagingButtonClass与PagingButtonStyle属性,可以单独为分页导航按钮(数字页索引、上页、下

    页、首页和尾页)设置CSS样式;

    新增FirstLastButtonClass与FirstLastButtonStyle属性,可以单独为首页和尾页分页导航按钮设置CSS

    样式,如果该属性未设置,但指定了PagingButtonClass与PagingButtonStyle属性的值,则首页和尾页

    按钮样式将使用PagingButtonClass与PagingButtonStyle属性中指定的样式;

    新增NextPrevButtonClass与NextPrevButtonStyle属性,可以单独为上页和下页分页导航按钮设置CSS

    样式,如果该属性未设置,但指定了PagingButtonClass与PagingButtonStyle属性的值,则上页和下页

    按钮样式将使用PagingButtonClass与PagingButtonStyle属性中指定的样式;

    新增MoreButtonClass与MoreButtonStyle属性,可以单独为更多页(...)分页导航按钮设置CSS样式,

    如果该属性未设置,但指定了PagingButtonClass与PagingButtonStyle属性的值,则上页和下页按钮样

    式将使用PagingButtonClass与PagingButtonStyle属性中指定的样式;

    新增属性ShowMoreButtons,可以指定是否显示更多页按钮;

    新增属性CurrentPageButtonPosition,可设置在每次分页后,当前页数字索引在所有的数字页索引中的

    显示位置,该属性值是一个PagingButtonPosition枚举,对应的值及说明如下:

    Beginning:当前页数字索引总是显示在所有数字页索引的最前面;

    End:当前页数字索引总是显示在所有数字页索引的最后面;

    Center:当前页数字索引总是显示在所有数字页索引的中间;

    Fixed:默认值,固定不变;

    控件的CssClass属性仅应用于控件的窗口元素(div),将不再应用于下属分页元素;

    废止属性CenterCurrentPageButton,可以用CurrentPageButtonPosition属性取代;

    修改CurrentPageIndexn属性,允许在程序中任何地方以编程方式设置CurrentPageIndex的值来动态指定

    当前页,直接设置该属性的值时将同时引发PageChanging和PageChanged事件,实现和点击分页按钮

    一样的分页功能;

    修正了7.1版中设置SubmitButtonImageUrl属性后,Postback回发分页方式情况下点击数字页索引按钮

    不引发分页事件的bug;

    修正了使用Url分页时,如果页面上没有服务器端form控件时无法注册客户端脚本的bug,从7.2版起

    如果使用Url分页并且ShowPageIndexBox属性没有设置为Never时,AspNetPager控件必须放在

    runat="server">与标记之间,若使用Url分页并且ShowPageIndexBox为Never时,页面上可以不

    使用服务器端form控件。

    2

    AspNetPager的主要功能:

    1、支持通过Url进行分页:

    AspNetPager除提供默认的类似于DataGrid和GridView的PostBack分页方式外,还支持通过Url进行

    分页,象大多数asp程序中分页一样,Url分页方式允许用户通过在浏览器地址栏中输入相应的地址即

    可直接进入指定页面,也可以使搜索引擎搜索到所有分页的页面的内容,因此具有用户友好和搜索引擎

    友好的优点,关于Url分页与PostBack分页方式的差异,请参考Url与PostBack分页方式的对比。

    2、支持Url分页方式下的Url重写(UrlRewrite)功能

    Url重写技术可以使显示给用户的Url不同于实际的Url,Url重写技术被广泛应用于搜索引擎优化(SEO)、

    网站重组后重定向页面路径以及提供用户友好的Url等方面,AspNetPager支持Url重写技术使您可以

    自定义分页导航的Url格式,实现Url重写;

    3、支持使用用户自定义图片做为导航元素:

    您可以使用自定义的图片文件做为分页控件的导航元素,而不仅仅限于显示文字内容。

    4、功能强大灵活、使用方便、可定制性强:

    AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用

    主题(Theme)与皮肤(Skin)统一控件的整体样式,配合2.0中的DataSource控件,AspNetPager

    只需要编写短短几行代码,甚至无需编写任何代码,只需设置几个属性就可以实现分页功能。

    5、增强的VisualStudio2005/2008设计时支持

    增强的设计时支持使控件在设计时更加直观,易于使用,开发快捷方便。

    6、兼容IE6.0+及FireFox1.5+等浏览器

    7、丰富而完整的控件文档和示例项目:

    控件附带的完整的帮助文档及示例项目能够帮助您快速上手,熟悉AspNetPager控件的使用,您还可以

    通过给作者留言以及论坛提问等方式解决控件使用中遇到的问题。

    AspNetPager72Src下为AspNetPager组件源码

    AspNetPager7.2分页控件使用详细说明(二)

    2009-04-1608:15

    二、使用AspNetPager7.2分页控件的准备工作

    1、下载AspNetPager7.2分页控件(百度一下)

    2、将Bin文件夹下的和拷贝至站点文件夹下的Bin

    文件夹中

    3

    如果站点中无Bin文件夹,可在站点中点击右键-添加文件夹

    3、在VS2005工具箱中“常规”选项卡中点右键选择“选择项…”

    4

    点击“浏览…”,找到站点中的后确定,

    5

    工具箱中常规中出现了

    4、使用分页功能时,将AspNetPager分页控件拖曳至相应页面,编码即可。

    AspNetPager7.2分页控件使用详细说明(三)

    2009-04-1608:15

    三、分页控件示例

    1、在站点中添加App_Code的文件夹,如下图:

    2、将文件加入至App_Code的文件夹

    使用已有方法:

    ///

    ///执行一条返回第一条记录第一列的SqlCommand命令,通过已经存在的数据库连接。

    ///使用参数数组提供参数

    ///

    ///

    ///使用示例:

    ///Objectobj=ExecuteScalar(connString,Procedure,

    "PublishOrders",newSqlParameter("@prodid",24));

    ///

    6

    ///一个已经存在的数据库连接

    ///SqlCommand命令类型(存储过程,T-SQL语句,等

    等。)

    ///存储过程的名字或者T-SQL语句

    ///以数组形式提供SqlCommand命令中用到的参数列表

    ///返回一个object类型的数据,可以通过{Type}方法转换类型

    publicstaticobjectExecuteScalar(SqlConnectionconnection,CommandTypecmdType,

    stringcmdText,paramsSqlParameter[]commandParameters)

    {

    SqlCommandcmd=newSqlCommand();

    PrepareCommand(cmd,connection,null,cmdType,cmdText,commandParameters);

    objectval=eScalar();

    ();

    returnval;

    }

    加入分页方法:

    //分页

    ///

    ///AspNetPager分页

    ///clg

    ///2009.4

    ///

    ///已存在连接对象

    ///执行查询语句

    ///当前页码

    ///每页记录条数

    ///输出表名

    ///

    publicstaticDataSetGetCurrentPage(SqlConnectionconn,stringsqlStr,intpageIndex,

    intpageSize,stringouttable)

    {

    //设置导入的起始地址

    intfirstPage=pageIndex*pageSize;

    DataSetdataset=newDataSet();

    SqlDataAdapterdataAdapter=newSqlDataAdapter(sqlStr,conn);

    (dataset,firstPage,pageSize,outtable);

    ();

    e();

    returndataset;

    }

    3、中修改连库字符串,注意这里使用的是

    source=(local);uid=sa;pwd=sa;database=ASPNETTHREE"providerName="ent"/>

    4、前台显示页代码

    7

    <%@PageLanguage="C#"AutoEventWireup="true"CodeFile=""

    Inherits="RepList"%>

    <%@RegisterAssembly="AspNetPager"Namespace="er"TagPrefix="webdiyer"%>

    "/TR/xhtml1/DTD/">

    用控件的分页方法操作方法

    '><%

    #Eval("title")%>>  <%#Eval("AddTime","{0:d}")%>

    NumericButtonCount="6"UrlPaging="true"NumericButtonTextFormatString="[{0}]"

    CustomInfoHTML="第%CurrentPageIndex%页共%PageCount%

    页显示%StartRecordIndex%-%EndRecordIndex%条"ShowCustomInfoSection="left"

    FirstPageText="首页"LastPageText="末页"NextPageText="下页"PrevPageText="上页"

    Font-Names="Arial"BackColor="#F8B500"AlwaysShow="true"ShowInputBox="Always"

    SubmitButtonText="跳转"SubmitButtonStyle="botton"

    OnPageChanged="AspNetPager1_PageChanged">

    8

    5、页面的代码

    protectedvoidPage_Load(objectsender,EventArgse)

    {

    if(tring["ClassID"]!=null)

    {

    if(!IsPostBack)

    {

    Bind();

    }

    }

    else

    {

    ("alert('分类ID不存在!

    ');=''");

    }

    }

    privatevoidBind()

    {

    SqlConnectionconn=new

    SqlConnection(tionStringLocalTransaction);

    stringsqlcount="selectcount(*)fromNewswhereClassID="+

    tring["ClassID"];

    Count=(eScalar(conn,

    ,sqlcount,null).ToString());

    intpageIndex=tPageIndex-1;

    intpageSize=ze=2;

    stringsqlstr="select*fromNewswhere

    ClassID="+tring["ClassID"];

    urce=rentPage(conn,sqlstr,pageIndex,pageSi

    ze,"news");

    nd();

    }

    protectedvoidAspNetPager1_PageChanged(objectsender,EventArgse)

    {

    if(tring["ClassID"]!=null)

    {

    Bind();

    }

    }

    更多推荐

    repeater分页