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

星梦云:四川100G高防4H4G10M月付仅60元

星梦云怎么样?星梦云资质齐全,IDC/ISP均有,从星梦云这边租的服务器均可以备案,属于一手资源,高防机柜、大带宽、高防IP业务,一手整C IP段,四川电信,星梦云专注四川高防服务器,成都服务器,雅安服务器。星梦云目前夏日云服务器促销,四川100G高防4H4G10M月付仅60元;西南高防月付特价活动,续费同价,买到就是赚到!点击进入:星梦云官方网站地址1、成都电信年中活动机(成都电信优化线路,封锁...

HostYun(月18元),CN2直连香港大带宽VPS 50M带宽起

对于如今的云服务商的竞争着实很激烈,我们可以看到国内国外服务商的各种内卷,使得我们很多个人服务商压力还是比较大的。我们看到这几年的服务商变动还是比较大的,很多新服务商坚持不超过三个月,有的是多个品牌同步进行然后分别的跑路赚一波走人。对于我们用户来说,便宜的服务商固然可以试试,但是如果是不确定的,建议月付或者主力业务尽量的还是注意备份。HostYun 最近几个月还是比较活跃的,在前面也有多次介绍到商...

香港服务器促销:香港华为云混合服务器、高防服务器首月半价,普通110M大带宽服务器月付799,付5用6,付10用13

博鳌云是一家以海外互联网基础业务为主的高新技术企业,运营全球高品质数据中心业务。自2008年开始为用户提供服务,距今11年,在国人商家中来说非常老牌。致力于为中国用户提供域名注册(国外接口)、免费虚拟主机、香港虚拟主机、VPS云主机和香港、台湾、马来西亚等地服务器租用服务,各类网络应用解決方案等领域的专业网络数据服务。商家支持支付宝、微信、银行转账等付款方式。目前香港有一款特价独立服务器正在促销,...

分页控件为你推荐
conversionconversion to是什么意思大牛网大牛网怎么样文件损坏电脑老是显示文件损坏,请运行chkdsk工具,怎么办?支付宝账单查询支付宝账单怎么查支付宝账单查询支付宝怎么查询交易记录光纤是什么光纤是什么什么是光纤什么是光纤网络活跃网络移动大V网是什么意思?4g上网卡4G手机上网卡和4G网络是什么意思?互动电视怎么用互动电视上网
域名交易 windows虚机 便宜vps VPS之家 北京vps主机 3322免费域名 已经备案域名 lamp安装 asp.net主机 oneasiahost softlayer edis 圣迭戈 163网 patcha 商务主机 警告本网站美国保护 免费防火墙 129邮箱 亚马逊香港官网 更多