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

欧路云:美国CUVIP线路10G防御,8折优惠,19元/月起

欧路云新上了美国洛杉矶cera机房的云服务器,具备弹性云特征(可自定义需要的资源配置:E5-2660 V3、内存、硬盘、流量、带宽),直连网络(联通CUVIP线路),KVM虚拟,自带一个IP,支持购买多个IP,10G的DDoS防御。付款方式:PayPal、支付宝、微信、数字货币(BTC USDT LTC ETH)测试IP:23.224.49.126云服务器 全场8折 优惠码:zhujiceping...

RackNerd 黑色星期五5款年付套餐

RackNerd 商家从2019年上线以来争议也是比较大的,一直低价促销很多网友都认为坚持时间不长可能会跑路。不过,目前看到RackNerd还是在坚持且这次黑五活动也有发布,且活动促销也是比较多的,不过对于我们用户来说选择这些低价服务商尽量的不要将长远项目放在上面,低价年付套餐服务商一般都是用来临时业务的。RackNerd商家这次发布黑五促销活动,一共有五款年付套餐,涉及到多个机房。最低年付的套餐...

快云科技:夏季大促销,香港VPS7.5折特惠,CN2 GIA线路; 年付仅不到五折巨惠,续费永久同价

快云科技怎么样?快云科技是一家成立于2020年的新起国内主机商,资质齐全 持有IDC ICP ISP等正规商家。我们秉承着服务于客户服务于大众的理念运营,机器线路优价格低。目前已注册用户达到5000+!主营产品有:香港弹性云服务器,美国vps和日本vps,香港物理机,国内高防物理机以及美国日本高防物理机!产品特色:全配置均20M带宽,架构采用KVM虚拟化技术,全盘SSD硬盘,RAID10阵列, 国...

分页控件为你推荐
企业无线覆盖方案厂房该如何搭建网络和WiFi覆盖网络受限制或无连接为什么电脑连wifi显示受限制或无连接起英文名好听的英文名字a8处理器什么是A8处理器?什么是cookie什么是浏览器COOK?资源优化配置什么是优化产业结构,资源优化配置??招行信用卡还款招行信用卡还款顺序是怎样的全球随机视频网全球随机视频网怎么打字和别人聊天?快照优化快照跟不上优化节奏优化方法出问题?t320T320是3G手机吗,有TX用过吗?怎么样啊?
查询ip 厦门域名注册 国内vps 狗爹 搬瓦工官网 mediafire下载工具 42u机柜尺寸 火车票抢票攻略 debian源 gg广告 百度云1t 爱奇艺会员免费试用 卡巴斯基免费试用版 raid10 域名dns 空间申请 域名和主机 移动王卡 alexa搜 comodo 更多