分页控件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分页控件如何使用相关文档

VoLLcloud6折限量,香港CMI云服务器三网直连-200M带宽

vollcloud LLC首次推出6折促销,本次促销福利主要感恩与回馈广大用户对于我们的信任与支持,我们将继续稳步前行,为广大用户们提供更好的产品和服务,另外,本次促销码共限制使用30个,个人不限购,用完活动结束,同时所有vps产品支持3日内无条件退款和提供免费试用。需要了解更多产品可前往官网查看!vollcloud优惠码:VoLLcloud终生6折促销码:Y5C0V7R0YW商品名称CPU内存S...

DogYun香港BGP月付14.4元主机简单测试

前些天赵容分享过DogYun(狗云)香港BGP线路AMD 5950X经典低价云服务器的信息(点击查看),刚好账户还有点余额够开个最低配,所以手贱尝试下,这些贴上简单测试信息,方便大家参考。官方网站:www.dogyun.com主机配置我搞的是最低款优惠后14.4元/月的,配置单核,512MB内存,10GB硬盘,300GB/50Mbps月流量。基本信息DogYun的VPS主机管理集成在会员中心,包括...

€4.99/月Contabo云服务器,美国高性价比VPS/4核8G内存200G SSD存储

Contabo是一家运营了20多年的欧洲老牌主机商,之前主要是运营德国数据中心,Contabo在今年4月份增设新加坡数据中心,近期同时新增了美国纽约和西雅图数据中心。全球布局基本完成,目前可选的数据中心包括:德国本土、美国东部(纽约)、美国西部(西雅图)、美国中部(圣路易斯)和亚洲的新加坡数据中心。Contabo的之前国外主机测评网站有多次介绍,他们家的特点就是性价比高,而且这个高不是一般的高,是...

分页控件为你推荐
云知声乐视TV怎么连接Wifi0x800ccc0f您的服务器意外终止了连接。其可能原因包括服务器出错、网络出错或长时间处于非活动状态。 0x800CCC0Fsoap是什么意思肥皂剧是什么意思?网络购物的发展网购发展史购物网站设计凡客诚品,当当网、卓越网、淘宝、京东商城等电子商务网站的网页设计与功能不同科学计算器说明书如何使用科学计算器gps简介GPS代表什么含义?趋势防毒如何破解趋势防病毒墙怎样上传照片手机如何上传照片,具体步骤存储系统ROM是什么存储器?
vps服务器租用 cn域名价格 美国翻墙 cpanel 回程路由 华为云主机 gg广告 hkg 泉州电信 搜索引擎提交入口 web服务器安全 支持外链的相册 超级服务器 双线asp空间 百度云加速 net空间 lamp什么意思 摩尔庄园注册 免费网络空间 好看的空间 更多