分页控件AspNetPager分页控件如何使用

分页控件  时间:2021-09-03  阅读:()

DataGridView控件怎么实现分页功能?

//WinForm中DataGridView的分页,需要2个控件,一个BindingSource,一个BindingNavigator。

bnPager为BindingNavigator,BindSource为BindingSource。

int pageSize = 0; int nMax = 0; int pageCount = 0; int pageCurrent = 0; int nCurrent = 0; DataSet myDs = new DataSet(); DataTable dt = new DataTable(); public frmPage() { InitializeComponent(); FillData(); }

public void FillData() { SqlConnection conn = MyClass.CreateConn(); conn.Open(); SqlDataAdapter myDa = new SqlDataAdapter("select * from bookInfo", conn); myDa.Fill(myDs, "myTable"); conn.Close(); dt = myDs.Tables[0]; InitDataSet(); } private void InitDataSet() { pageSize = 10; nMax = dt.Rows.Count; pageCount = (nMax / pageSize); if ((nMax%pageSize)>0) { pageCount++; } pageCurrent = 1; nCurrent = 0; LoadData(); }

private void LoadData() { int nStartPos = 0; int nEndPos = 0; DataTable dtTemp = dt.Clone(); if (pageCurrent==pageCount) { nEndPos = nMax; } else { nEndPos = pageSize * pageCurrent; } nStartPos = nCurrent; toolStripLabel1.Text = "/ "+pageCount.ToString(); toolStripLabel2.Text = Convert.ToString(pageCurrent); for (int i = nStartPos; i < nEndPos; i++) { dtTemp.ImportRow(dt.Rows[i]); nCurrent++; } BindSource.DataSource=dtTemp; bnPager.BindingSource = BindSource; DGView.DataSource = BindSource; }

private void bnPager_ItemClicked(object sender, ToolStripItemClickedEventArgs e) { if (e.ClickedItem.Text=="上一页") { pageCurrent--; if (pageCurrent<=0) { MessageBox.Show("已经是第一页,请点击“下一页”查看!"); return; } else { nCurrent = pageSize * (pageCurrent - 1); } LoadData(); } if (e.ClickedItem.Text=="下一页") { pageCurrent++; if (pageCurrent>pageCount) { MessageBox.Show("已经是最后一页,请点击“上一页”查看!"); return; } else { nCurrent = pageSize * (pageCurrent - 1); } LoadData(); } }

参考资料: /newsview.asp?id=55

如何使用asp.net web页面自定义分页控件

假如数据库有10000条记录,默认SQL是分页把这10000条记录都取出来,然后利用GridView内置功能分页,显示出来,那么只显示20条,SQL也是取出1000条,而自定义分页则是利用SQL,使用20条,就从数据库里去20条,其他的不取,所以,效率较高,但是实现稍微麻烦点。

假设你要实现类似如下一个自定义产品分页列表 数据库主要设计如下字段 那么自定义SQL分页需要思考如下几个问题: (1)总共有多少条记录。

(可用 select count(*) from Products 得到 10000条) (2)页面大小NumRows。

(也就是每页记录数,例如 20条也一页) 由上面(1)和(2)就可以得出可以分多少页。

10000/20=500页。

(3)当前是第几页 startRowIndex。

例如用户点击到第3页,每页20条,那么第4页就是 从 3*20+1=61开始计算。

知道了上面参数,还需要知道SQL提供了一个 Row_Number函数,他可以把数据库每行增加一个索引,通过比较 ?Row在 @startRowInx 和 ?@StartRowIndex+@NumRows-1 就可以获取分页的记录数。

具体如下 当取到上面的数据后,就可以自己build上一页,下一页等页面了。

看不懂这个分页控件,?

分页控件的一般算法是这样的:一个currentpage,表示当前显示的页码,一个pagesize,表示每页显示的数量。

于是当前页显示的数据就是数据库里的第(currentpage-1)*pagesize+1条到第currentpage+pagesize条。

点击前一页就让currentpage-1,后一页就currentpage+1,然后重新读取数据并显示。

希望以上算法对你理解程序有帮助

linq分页控件

1)首先把GridView的AllowPaging=true。

2)然后在PageIndexChanging事件中e.NewPageIndex获得当前页(从0开始)

vs2012的分页控件是怎么用

如果是安装版本的话, 操作步骤:引用——添加引用——COM(.NET,如果在COM中找不到对应的DEV就去.NET中找)——选择你要添加的DLL——确定即可。

如果只是几个DLL的话, 操作步骤:引用——添加引用——浏览(找到你DLL存放的目录)——确定即可。

AspNetPager分页控件如何使用

前台: <webdiyer:AspNetPager SubmitButtonClass="buttons" ID="AspNetPager1" runat="server" AlwaysShow="True" FirstPageText="首页" NextPageText="下一页" PrevPageText="前一页" LastPageText="尾页" PageSize="15" ShowInputBox="Always" OnPageChanged="AspNetPager1_PageChanged"> </webdiyer:AspNetPager> <!-- PageSize="15"定义每页显示数据条数 --> 后台: /// <summary> /// 加载事件 /// </summary> protected void Page_Load(object sender, EventArgs e) { BoundList(); } /// <summary> /// 全局的变量,分页用的参数数据信息总数 /// </summary> public static int sumcount; /// <summary> /// 绑定信息数据 /// </summary> private void BoundList() { DataTable dt = GetList().Tables[0];//获取数据源 if (dt.Rows.Count > 0) { sumcount = dt.Rows.Count; PagedDataSource pds = new PagedDataSource(); AspNetPager1.RecordCount = sumcount; pds.AllowPaging = true; pds.PageSize = AspNetPager1.PageSize; pds.CurrentPageIndex = AspNetPager1.CurrentPageIndex - 1; pds.DataSource = dt.DefaultView; this.gridView1.DataSource = pds; //可以绑定到Gridview 、datalist等数据控件上,此处为Gridview this.gridView1.DataBind(); } else { AspNetPager1.RecordCount = 0; this.gridView1.DataSource = null; gridView1.EmptyDataText = "没有相关信息!"; this.gridView1.DataBind(); } } /// <summary> /// 分页控件的翻页事件 /// </summary> protected void AspNetPager1_PageChanged(object sender, EventArgs e) { BoundList(); } /z/q751093892.htm?oldq=1

  • 分页控件AspNetPager分页控件如何使用相关文档

UCloud 618活动:香港云服务器月付13元起;最高可购3年,AMD/Intel系列

ucloud6.18推出全球大促活动,针对新老用户(个人/企业)提供云服务器促销产品,其中最低配快杰云服务器月付5元起,中国香港快杰型云服务器月付13元起,最高可购3年,有AMD/Intel系列。当然这都是针对新用户的优惠。注意,UCloud全球有31个数据中心,29条专线,覆盖五大洲,基本上你想要的都能找到。注意:以上ucloud 618优惠都是新用户专享,老用户就随便看看!点击进入:uclou...

2022年腾讯云新春采购季代金券提前领 领取满减优惠券和域名优惠

2022年春节假期陆续结束,根据惯例在春节之后各大云服务商会继续开始一年的促销活动。今年二月中旬会开启新春采购季的活动,我们已经看到腾讯云商家在春节期间已经有预告活动。当时已经看到有抢先优惠促销活动,目前我们企业和个人可以领取腾讯云代金券满减活动,以及企业用户可以领取域名优惠低至.COM域名1元。 直达链接 - 腾讯云新春采购活动抢先看活动时间:2022年1月20日至2022年2月15日我们可以在...

美国Cera 2核4G 20元/45天 香港CN2 E5 20M物理机服务器 150元 日本CN2 E5 20M物理机服务器 150元 提速啦

提速啦 成立于2012年,作为互联网老兵我们一直为用户提供 稳定 高速 高质量的产品。成立至今一直深受用户的喜爱 荣获 “2021年赣州安全大赛第三名” “2020创新企业入围奖” 等殊荣。目前我司在美国拥有4.6万G总内存云服务器资源,香港拥有2.2万G总内存云服务器资源,阿里云香港机房拥有8000G总内存云服务器资源,国内多地区拥有1.6万G总内存云服务器资源,绝非1 2台宿主机的小商家可比。...

分页控件为你推荐
连接池什么是连接池,连接池有什么作用文件损坏手机文件已损坏是什么回事?资源优化配置资源优化配置的前提条件t320T320是3G手机吗,有TX用过吗?怎么样啊?soap是什么意思肥皂剧是什么意思?sd卡座我是一家手机生产厂的采购员,想知道按键开关、SD卡座什么厂家生产的好啊。知道的说说。谢谢黑屏操作电脑一操作就黑屏 不操作就没有事。该怎么恢复黑屏操作麻烦问一下 黑屏的各个指令海淀区公司注册北京海淀培训公司注册如何办理?省份证查询怎么查询我的身份证都注册了什么网站?
动态域名解析 淘宝二级域名 主机屋 老鹰主机 suspended 本网站在美国维护 e蜗 大容量存储器 jsp空间 国外视频网站有哪些 宏讯 网站加速软件 starry mteam 学生机 winds gotoassist 美国达拉斯 留言板 次时代主机 更多