最近在做数据管理系统的开发工作,遇到数据表中记录过多的问题,虽然asp.net中已有分页控件,但是非常简陋。AspNetPager是一款非常强大的分页控件,它的介绍我这里就不在赘述了,网上有很多它的介绍资料。但在学习使用它的过程中,网上有一些资料非常复杂,而且源代码没有给出,对熟练使用它造成了困扰。经过一个下午的摸索,终于能够成功使用。下面就写出运用AspNetPager控件的详细步骤,希望对新手有所帮助。

1、下载AspNetPager的dll文件,解压后添加到项目的bin目录中,并添加引用;

2、把控件添加到项目中

<webdiyer:AspNetPager id="AspNetPager1"  runat="server" Width="500px"
              FirstPageText="首页"   LastPageText="尾页" NextPageText="下一页" PrevPageText="上一页"
              Height="40px" ShowInputBox="Always" TextAfterInputBox="页"  
              TextBeforeInputBox="跳转到第" AlwaysShow="True"
              onpagechanged="AspNetPager1_PageChanged"> 
</webdiyer:AspNetPager>

之后会出现创建控件错误,那是因为还没有对该控件进行注册,在aspx文件顶部加上:

<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>

3、AspNetPager最重要的是RecrdCount属性和PageChanged事件

protected void AspNetPager1_PageChanged(object sender, EventArgs e)
        {
            BindData();
        }

private void BindData( )

{

string sql = "select * from  MM_talbeSample";

this.AspNetPager1.PageSize = 15;//设置每页显示15条记录
           this.AspNetPager1.RecordCount = CountRecord();//获得表中总的记录数
           DataSet ds = CreatePage(sql, this.AspNetPager1.CurrentPageIndex, this.AspNetPager1.PageSize);;
          this.tableContent.DataSource = ds;
           this.tableContent.DataBind();

}

protected int CountRecord()
        {
            int pageNum = 0;
            string sql = "select COUNT(*) from MM_tableSample ";
            DataTable dt = SqlHelper.getDataTable(sql)//返回一个只有一行一列的表
            pageNum = Convert.ToInt16(dt.Rows[0].ItemArray[0]);
            return pageNum;
        }

public DataSet CreatePage(string sql, int currentPage, int pagesize)
        {
            SqlDataAdapter ada = new SqlDataAdapter(sql, SqlHelper.SqlConnectionStr);// SqlHelper.SqlConnectionStr为定义的sqlserver连接字符串
            DataSet ds = new DataSet();
            int startRow = (currentPage - 1) * pagesize;
            ada.Fill(ds, startRow, pagesize, "table");;
            return ds;
        }

上面的代码除了数据库操作以外,算是比较详细的了,之后就大功告成了。

AspNetPager用法的更多相关文章

  1. AspNetPager控件的最基本用法

    AspNetPager控件是一个基于.net的第三方免费开源控件,具有开发高效.使用方便.功能完整等优点.它弥补了GridView内置分页以及PageDatasource类辅助分页的不足,将分页数据逻 ...

  2. 【转】AspNetPager分页控件用法

    AspNetPager分页控件解决了分页中的很多问题,直接采用该控件进行分页处理,会将繁琐的分页工作变得简单化,下面是我如何使用AspNetPager控件进行分页处理的详细代码: 1.首先到www.w ...

  3. AspNetPager 分页的详细用法(ASP.NET)

    1.[添加AspNetPager.dll文件] 2.[使用方法] public static DataTable GetRecord(SystemModel.Pager mt, ref int Tot ...

  4. PagedDataSource、Repeater以及AspNetPager在ASP.NET上分页。

    一.前台使用服务器标签 1.1使用Repeater控件 <asp:Repeater ID="Repeater1" runat="server"> & ...

  5. GridView的常规用法

    GridView控件在Asp.net中相当常用,以下是控件的解释,有些是常用的,有些是偶尔用到的,查找.使用.记录,仅此而已.(最后附带DropDownList控件) ASP.NET中GridView ...

  6. ASP.NET真分页_接前篇引用AspNetPager.dll进行数据分页

    一.前端准备工作 1.之前我写到过<Asp.net中引用AspNetPager.dll进行数据分页>  这种分页方式只能在前台将数据分页,而每次点击查询时对目标数据库还是全查询,这样不仅会 ...

  7. EditText 基本用法

    title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...

  8. jquery插件的用法之cookie 插件

    一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...

  9. Java中的Socket的用法

                                   Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...

随机推荐

  1. c++ 中文字符串处理方法

    转自:http://hi.baidu.com/hehehehello/item/dcc44a4a6afc690e6dc2f08b C++处理中文的问题困扰我很久了.之前一旦遇到中文基本就投诸java怀 ...

  2. C++的优秀特性4:指针

    (转载请注明原创于潘多拉盒子) 其实指针不是C++的特性,而是地地道道的C的特性.有人说C++继承了C的指针,实在是败笔,造成内存泄漏云云,纯粹是不懂.可以这么说,如果没有指针,C++会逊色很多,应用 ...

  3. 连接SQLServer时提示“但是在登录前的握手期间发生错误。 (provider: SSL Provider, error: 0 - 等待的操作过时”解决办法

    解决:"已成功与服务器建立连接,但是在登录前的握手期间发生错误. (provider: SSL Provider, error: 0 - 等待的操作过时" 官方问题介绍:http: ...

  4. BZOJ 2038 [2009国家集训队]小Z的袜子 莫队

    2038: [2009国家集训队]小Z的袜子(hose) 题目连接: http://www.lydsy.com/JudgeOnline/problem.php?id=2038 Descriptionw ...

  5. Codeforces Round #290 (Div. 2) C. Fox And Names dfs

    C. Fox And Names 题目连接: http://codeforces.com/contest/510/problem/C Description Fox Ciel is going to ...

  6. TP的一条sql语句(子查询)

    $model=M(''); $model->table(C('DB_PREFIX').'goods as g') ->join(C('DB_PREFIX').'orders as o on ...

  7. Android闹钟【复杂版】

    最近做闹钟,所以自己写了个Demo版本,这个程序是用listview单独的类来实现的,和activity类分开来实现的!这个是用数据库进行更新的,当闹钟设置后,闹钟图片变成闹钟的样子,闹钟取消后,图片 ...

  8. 浏览器中打开IOS应用并传参

    原创文章,转载请注明 开发中遇到这么一个问题,就是动态地指定联接服务器地址,或其它数据.如果是其它数据还好说一些,可以通过在服务器上获得的方式来弄.但如果服务器地址都需要动态指定的话.那就得另想办法了 ...

  9. Java中static、final用法小结

    一.final 1.final变量: 当你在类中定义变量时,在其前面加上final关键字,那便是说,这个变量一旦被初始化便不可改变,这里不可改变的意思对基本类型来说是其值不可变,而对于对象变量来说其引 ...

  10. cocos2d win7 安卓环境配置开发

    相关工具 下载 Android SDK 下载和安装 Android NDK版本不要选r9的.用r8e!r9会报错 下载安装JDK版本是 jdk-7u13-windows-x64.exe 下载和安装Cy ...