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

香港云服务器最便宜价格是多少钱一个月、一年?

香港云服务器最便宜价格是多少钱一个月/一年?无论香港云服务器推出什么类型的配置和活动,价格都会一直吸引我们,那么就来说说香港最便宜的云服务器类型和香港最低的云服务器价格吧。香港云服务器最便宜最低价的价格是多少?香港云服务器只是服务器中最受欢迎的产品。香港云服务器有多种配置类型,如1核1G、2核2G、2核4G、8到16核32G等。这些配置可以满足大多数用户的需求,无论是电商站、视频还是游戏、小说等。...

Vultr新注册赠送100美元活动截止月底 需要可免费享30天福利

昨天晚上有收到VULTR服务商的邮件,如果我们有清楚的朋友应该知道VULTR对于新注册用户已经这两年的促销活动是有赠送100美元最高余额,不过这个余额有效期是30天,如果我们到期未使用完的话也会失效的。但是对于我们一般用户来说,这个活动还是不错的,只需要注册新账户充值10美金激活账户就可以。而且我们自己充值的余额还是可以继续使用且无有效期的。如果我们有需要申请的话可以参考"2021年最新可用Vul...

CloudCone月付$48,MC机房可小时付费

CloudCone商家在前面的文章中也有多次介绍,他们家的VPS主机还是蛮有特点的,和我们熟悉的DO、Linode、VuLTR商家很相似可以采用小时时间计费,如果我们不满意且不需要可以删除机器,这样就不扣费,如果希望用的时候再开通。唯独比较吐槽的就是他们家的产品太过于单一,一来是只有云服务器,而且是机房就唯一的MC机房。CloudCone 这次四周年促销活动期间,商家有新增独立服务器业务。同样的C...

分页控件为你推荐
重装系统后数据恢复电脑重装系统后,所有的文件都没有了,怎么恢复啊?教育城域网怎样进入寿光教育城域网网站支付宝账单查询支付宝电子账单怎么查询4g上网卡什么是4G无线上网卡互动电视什么是“华数互动电视”?摇一摇周边什么是微信摇一摇周边?code查询怎么查code?工作经验介绍工作经验介绍怎么写乐辞自驱力读后感360官网打不开为何360安全卫士自动退出,所有的360官方网站打不开啊?
深圳虚拟主机 vps侦探 踢楼 godaddy主机 linode 私服服务器 10t等于多少g 68.168.16.150 双12活动 debian7 免费ddos防火墙 嘉洲服务器 鲁诺 t云 支持外链的相册 华为云盘 shuang12 php服务器 广东主机托管 hostease 更多