1、MVC分页控件实现 软件技术系冷亚洪 正大软件技术学院 软件技术系 内容摘要 一 认识分页控件 二 MVC分页控件的功能 三 实例分析 了解什么是分页控件 分页控件有何作用 有那些分类 有什么异同 如何实现通用的简单的 通用的分页控件 结合Demo进行讲解Js分页控件和MVC分页控件 介绍MVC分页控件中要实现的功能 重点阐述如何通用的分页控件原理 正大软件技术学院 软件技术系 一 认识分页控件 什么是分页 为什么要分页控件 控件呈现 实现方式 mvc代码实现 Js脚本实现分页方式 页面缓存分页 数据内容分页数据绑定方式 与数据表绑定 呈现查询结果 通用分页控件 1 分页控件与展示数据的控件分
2、离 它们之间没有任何耦合 并且它只负责显示一些分页信息 总页数 记录条数 每页记录条数 和与翻页相关的按钮的跳转 2 需要指定查询数据的控制器和Action即可 正大软件技术学院 软件技术系 二 MVC分页控件的功能 urlroute分页 分页方式 导航功能 Ajax支持 Browse IE6 Firefox3 0 OperaChromeSafari 上页 下页导航页码数字导航页码手动输入页码选项选择页码 MicrosoftAjaxMicrosoftMvcAjaxjQuery实现Ajax 正大软件技术学院 软件技术系 三 实例分析 分页控件实现 Demo 导航算法 HtmlHelper扩展 分
3、面呈现 类图 Demo 正大软件技术学院 软件技术系 三 实例分析 类图 1 分页项 2 分页参数 3 生成Html 4 Helper扩展 正大软件技术学院 软件技术系 三 实例分析 类图 分页选项 实现分页选项 用于参数传递及绑定 PagerOptions publicclassPagerOptions publicPagerOptions publicstringControllerName get set 控制器名称publicstringActionName get set Action名称publicstringPageParame get set 分页参数名称publicintPa
4、geIndex get set 当前索引页 从1开始publicintPageSize get set 页面分页大小publicintTotalRecords get set 总记录数publicstringPrevPageText get set 上一页文本publicstringNextPageText get set 下一页文本publicstringFirstPageText get set 第一页文本publicstringLastPageText get set 最后一页文本publicstringId get set 包含分页控件的div标签的ID 正大软件技术学院 软件技术系
5、三 实例分析 导航算法 计算总页数 TotalPageCount int Math Ceiling TotalRecords double PageSize 首页 Disabled PageIndex 1 PageIndex 1 上一页 Disabled PageIndex 1 PageIndex PageIndex 1 下一页 Disabled PageIndex TotalPageCount PageIndex PageIndex 1 末页 Disabled PageIndex TotalPageCount PageIndex TotalPageCount 正大软件技术学院 软件技术系 三
6、 实例分析 分页呈现 生成每个分页项的html privateMvcHtmlStringGeneratePagerElement PagerItemitem if item Disabled 生成标签 returnMvcHtmlString Create String Format 正大软件技术学院 软件技术系 三 实例分析 页面呈现 1 HtmlHelper功能扩展 生成控件html到页面视图 publicstaticclassPagerHelper publicstaticMvcHtmlStringPager thisHtmlHelperhelper inttotalRecords intpageSize intpageIndex stringactionName stringcontrollerName PagerOptionspagerOptions objecthtmlAttributes 代码实现 2 MvcPaper使用 Html Pager TotalRecords PageSize PageIndex Action Controller htmlAttributes 正大软件技术学院 软件技术系 Demo资料 End