已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
GridView分页系列(精装版)1:GridView自带分页:GridView自带的分页,是假分页,他每次从数据库把数据全部查询出之后,通过分页的算法,进行按每页数量进行分页。分页的属性元素:分页功能的实现就是通过对这些属性元素的操作实现的。/this.GvShow.PageIndex 当前页的索引/this.GvShow.PageCount 总共的页数/this.GvShow.Rows.Count 当前页签内的gridview的行数/this.GvShow.PageSize 每页的记录数/this.GvShow.PageIndex*this.GvShow.rows.count + 1 行索引设置普通的GridView分页:属性AllowPaging=True、PageSize=2 设置分页事件onpageindexchanging=GvShow_PageIndexChanging后台方法绑定:protected void GvShow_PageIndexChanging(object sender, GridViewPageEventArgs e)this.GvShow.PageIndex = e.NewPageIndex;BindView();2:自定义样式的GridView自带分页:普通的GridView自带的分页,不带样式,只是普通的1,2,3等,如果希望获取到具有其他分页样式就应该设置属性后台访问此属性的实例:this.GvShow.PagerSettings.FirstPageText = 首页;this.GvShow.PagerSettings.LastPageText = 尾页;this.GvShow.PagerSettings.NextPageText = 下一页;this.GvShow.PagerSettings.PreviousPageText = 上一页;this.GvShow.PagerSettings.Mode = PagerButtons.NextPreviousFirstLast;通过属性可以设置GRIDVIEW分页的样式3:在分页模板中自定义分页的样式,虽然微软开辟了这个模板提供给用户类似于自定义分页的功能,但这个功能完全还是基于微软的GridView自带的分页进行的,属性的Visable的属性必须是true AllowPaging=true 与 PageSize=3属性页都要进行相关的有效设置才可以。这种情况下的分页可以不使用onpageindexchanging=GvShow_PageIndexChanging微软自带的分页事件,开发自己独立的分页事件与方法即可范例:前台代码:%-% asp:Label ID=lblRegionName runat=server Text= asp:Label ID=lblCityName runat=server Text= asp:Label ID=lblUserName runat=server Text= 首页 上一页 下一页 尾页 页次:0/0页 共0条记录 0条记录/页 后台代码:namespace GridViewDemo.GridView分页系列 public partial class GridView自定义分页02 : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) BindView(); InitButtons(); private void BindView() DataTable dt = UserDemoAccess.GetUserSouce(); ViewStateRowCounts = dt.Rows.Count.ToString(); this.GvShow.DataSource = dt; this.GvShow.DataBind(); protected void GvShow_PageIndexChanging(object sender, GridViewPageEventArgs e) this.GvShow.PageIndex = e.NewPageIndex; BindView(); InitButtons(); protected void GvShow_RowDataBound(object sender, GridViewRowEventArgs e) if (e.Row.RowType = DataControlRowType.DataRow) e.Row.Attributes.Add(onmouseover, this.setAttribute(BKC,this.style.backgroundColor);this.style.cursor=default,this.style.backgroundColor=#ffff99); e.Row.Attributes.Add(onmouseout, this.style.backgroundColor=this.getAttribute(BKC);); /if(e.Row.RowType = DataControlRowType.Pager) / / GridViewRow gr = e.Row; / /页次 - 第几页 / Label txtNowPage = gr.FindControl(txtNowPage) as Label; / /总页数 / Label txtAllPage = gr.FindControl(txtAllPage) as Label; / /总记录数 / Label txtTotal = gr.FindControl(txtTotal) as Label; / /条记录/页 / Label txtNowRed = gr.FindControl(txtNowRed) as Label; / txtNowPage.Text = (this.GvShow.PageIndex+1).ToString(); / txtAllPage.Text = this.GvShow.PageCount.ToString(); / txtTotal.Text = ViewStateRowCounts.ToString(); / txtNowRed.Text = this.GvShow.PageSize.ToString(); / protected void cmdCheck_CheckedChanged(object sender, EventArgs e) /CheckBox cmdCheck = this.GvShow.BottomPagerRow.FindControl(cmdCheck) as CheckBox; /if (cmdCheck.Checked) / / this.GvShow.PagerSettings.Mode = PagerButtons.Numeric; / protected void GvShow_RowCommand(object sender, GridViewCommandEventArgs e) /控制页签 switch(e.CommandName) case begin: this.GvShow.PageIndex = 0; ; break; case before: if(this.GvShow.PageIndex 0) this.GvShow.PageIndex -= 1; ; break; case after: if(this.GvShow.PageIndex 1) cmdbegin.Enabled = true; cmdbefore.Enabled = true; cmdafter.Enabled = true; cmdend.Enabled = true; if(this.GvShow.PageIndex = 0) cmdbegin.Enabled = false; cmdbefore.Enabled = false; else if(this.GvShow.PageIndex = this.GvShow.PageCount-1) cmdafter.Enabled = false; cmdend.Enabled = false; 此外还可以不利用GridView自带的分页模板标记可以在GridView的外部构造一个talbe与gridview对应,这样更加灵活,也应用于div中的GridView。前台代码: 首页 上一页 下一页 尾页 页次:0/0页 共0条记录 0条记录/页 这俩种方式的区别在于:适用内部的分页模板标记,在触发事件后,不用重新绑定GridView,这个是由GridView内部的分页机制自动完成的,而采用外部构造的方式,在执行完之后,必须重新绑定gridview,因为这个时候的pageIndex等信息已经变化,需要重新进行绑定。后台代码:protected void PagerButton_Command(object sender, System.Web.UI.WebControls.CommandEventArgs e) switch (e.CommandName) case begin: this.GvShow.PageIndex = 0; ; break; case before: if (this.GvShow.PageIndex 0) this.GvShow.PageIndex -= 1; ; break; case after: if (this.GvShow.PageIndex this.GvShow.PageCount - 1) this.GvShow.PageIndex += 1; ; break; case end: this.GvShow.PageIndex = this.GvShow.PageCount - 1; ; break; /在设置完页签后,将数据源重新绑定到GridView中 BindView(); InitButtons(); 一个很好样式的假分页,功能齐全:前台页面: asp:Label ID=lblRegionName runat=server Text= asp:Label ID=lblCityName runat=server Text= asp:Label ID=lblUserName runat=server Text= 首页 上一页 下一页 尾页 页次:0/0页 共0条记录 0条记录/页 后台页面:namespace GridViewDemo.GridView分页系列 public partial class GridView自定义分页04 : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) BindView(); InitButtons(); InitDrp(); private void BindView() DataTable dt = UserDemoAccess.GetUserSouce(); ViewStatePageCount = dt.Rows.Count.ToString(); this.GvShow.DataSource = dt; ; this.GvShow.DataBind(); protected void GvShow_RowDataBound(object sender, GridViewRowEventArgs e) if (e.Row.RowType = DataControlRowType.DataRow) e.Row.Attributes.Add(onmouseover, this.setAttribute(BKC,this.style.backgroundColor);this.style.cursor=default,this.style.backgroundColor=#ffff99); e.Row.Attributes.Add(onmouseout, this.style.backgroundColor=this.getAttribute(BKC);); protected void PagerButton_Command(object sender, System.Web.UI.WebControls.CommandEventArgs e) switch (e.CommandName) case begin: this.GvShow.PageIndex = 0; ; break; case before: if (this.GvShow.PageIndex 0) this.GvShow.PageIndex -= 1; ; break; case after: if (this.GvSho
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Unit5 Fun Clubs单元练习-2025-2026学年人教版七年级英语上册
- 云南省隆阳区二中2026届生物高二第一学期期末调研模拟试题含解析
- 云南省屏边县民族中学2025年化学高二上期末质量跟踪监视模拟试题含解析
- 四川省外国语学校2025年高一上化学期中质量检测模拟试题含解析
- 西安高新科技职业学院《公司金融分析实训》2024-2025学年第一学期期末试卷
- 上海市五十二中2026届化学高二上期末达标检测模拟试题含解析
- 浙江省宁波市诺丁汉大学附中2025-2026学年物理高二上期末达标检测试题含解析
- 山东省泰安市第四中学2026届高一上生物期末学业水平测试试题含解析
- 临终患者翻身护理的伦理与人文关怀
- 2026年中考语文专项复习:想象作文 审题立意技巧+同步练习(含答案+范文)
- 2025年车险试题及答案
- 2025至2030伴侣动物内寄生虫行业发展研究与产业战略规划分析评估报告
- 混凝土搅拌站高效运营管理方案
- 营销人员星级管理办法
- 脑出血康复训练
- 七年级全册英语中文单词汇编
- 胃肠道肿瘤影像诊断规范
- 空乘形象设计概论
- 2025年秋期人教版五年级上册数学全册核心素养教案(教学反思有内容+二次备课版)
- 【《基于STM32单片机的智能社区安防系统设计与实现》13000字(论文)】
- 肝性脑病护理的业务学习
评论
0/150
提交评论