GridView大数据分页程序

xiaoxiang_lying 2011-03-01 10:28:51
在一个页面上加载几个GridView,且数据量比较大.

希望能够介绍一个好的不是第三方控件的分页程序.

我用VS2005开发,
希望只加载第一页,然后点下一页时加载第二页
分页样式如果下
<div style="text-align: center; color: Blue">
<asp:LinkButton ID="cmdFirstPage" runat="server" CommandName="Page" CommandArgument="First"
Enabled="<%# ((GridView)Container.Parent.Parent).PageIndex!=0 %>">首页</asp:LinkButton>
<asp:LinkButton ID="cmdPreview" runat="server" CommandArgument="Prev" CommandName="Page"
Enabled="<%# ((GridView)Container.Parent.Parent).PageIndex!=0 %>">前页</asp:LinkButton>
第<asp:Label ID="lblcurPage" ForeColor="Blue" runat="server" Text='<%# ((GridView)Container.Parent.Parent).PageIndex+1 %>'></asp:Label>页/共<asp:Label
ID="lblPageCount" ForeColor="blue" runat="server" Text='<%# ((GridView)Container.Parent.Parent).PageCount %>'></asp:Label>页
<asp:LinkButton ID="cmdNext" runat="server" CommandName="Page" CommandArgument="Next"
Enabled="<%# ((GridView)Container.Parent.Parent).PageIndex!=((GridView)Container.Parent.Parent).PageCount-1 %>">后页</asp:LinkButton>
<asp:LinkButton ID="cmdLastPage" runat="server" CommandArgument="Last" CommandName="Page"
Enabled="<%# ((GridView)Container.Parent.Parent).PageIndex!=((GridView)Container.Parent.Parent).PageCount-1 %>">尾页</asp:LinkButton>
 <asp:TextBox ID="txtGoPage" runat="server" Text='<%# ((GridView)Container.Parent.Parent).PageIndex+1 %>'
Width="32px" CssClass="inputmini"></asp:TextBox>页<asp:Button ID="turn" runat="server"
OnClick="turn_Click" Text="转到" /></div>


不胜感激!
...全文
228 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
PitTroll 2011-03-02
  • 打赏
  • 举报
回复
自己写个分页函数就可以了。
a260881071 2011-03-02
  • 打赏
  • 举报
回复
大数据最好用存储过程分页。
xiaoxiang_lying 2011-03-02
  • 打赏
  • 举报
回复
数据量很大一次只加载一页
ycproc 2011-03-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wxr0323 的回复:]

aspnetpager

地球人都知道。。
[/Quote]

那确实
chen_ya_ping 2011-03-02
  • 打赏
  • 举报
回复
http://www.cnblogs.com/chenping-987123/archive/2011/02/14/1954640.html
AJAX分页。
wisdom1 2011-03-02
  • 打赏
  • 举报
回复
加载几个GridView

绑定前:过滤下到几百条再绑定~~~
(搜索时候是全表数据)

自然框架 2011-03-02
  • 打赏
  • 举报
回复
为何不用第三方控件呢?

好的分页方式都是会被封装起来的,自己用着方便,别人想用也会很方便。

我这里也有一个,使用是很方便的。有源码,开源。

http://topic.csdn.net/u/20110130/08/9aa19fd5-96ea-4101-be22-2ee22bb2bf53.html

Postback最简单的设置


C# code/// <summary>
/// postback 的最简单的分页设置
/// </summary>
public partial class Simpleness : BaseWebPage
{
#region 初始化
protected override void OnInit(EventArgs e)
{
base.OnInit(e);

//数据访问函数库的实例,使用基类里定义的。
Pager1.DAL = base.Dal ;

//设置显示数据的控件
Pager1.ShowDataControl = this.GV;

//定义QuickPager_SQL,设置Page属性
Pager1.PagerSQL.Page = this;
//默认是PostBack的分页方式

}
#endregion

protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
SetPagerInfo(); //设置表名、字段名等
}

}

#region 给QuickPager_SQL 设置属性,以便拼接SQL
private void SetPagerInfo()
{
//表名或者视图名,必须设置
Pager1.PagerSQL.TableName = "Manage_FunListCol"; //表名或者视图名称
//一些分页算法必须设置主键。
Pager1.PagerSQL.TablePKColumn = "ListColID"; //主键名称,不支持复合主键
//排序字段也是必须设置的,否则就无法准确分页
Pager1.PagerSQL.TableOrderByColumns = "ListColID desc "; //排序字段,根据分页算法而定,可以支持多个排序字段

//默认TableShowColumns是 * ,可以不设置
//Pager1.PagerSQL.TableShowColumns = "*"; //需要显示的字段
//没有查询条件,那就不用设置了嘛。
//Pager1.PagerSQL.TableQuery = ""; //查询条件

//默认一页20条记录
//Pager1.PageSize = 4; //一页显示的记录数

//设置分页方式,默认是Max_TopTop
//Pager1.PagerSQL.SetPagerSQLKind = PagerSQLKind.Max_TopTop;


}
#endregion
}
IHandler 2011-03-02
  • 打赏
  • 举报
回复
1、SQL/存储过程分页读取数据,google一下,很多

2、在数据访问层分页读取
hebeijg 2011-03-02
  • 打赏
  • 举报
回复
这个公司里应该有的,除非你是创业型的公司,否则肯定有自己的框架的,
实在不行自己写个
godboy221 2011-03-02
  • 打赏
  • 举报
回复
好帖子!!
无爱大叔 2011-03-02
  • 打赏
  • 举报
回复
建议不要使用gridview,用repeater比较轻便
进取先生 2011-03-01
  • 打赏
  • 举报
回复
我最近也在找这方面的例子,gridview ajax
sihonglaoren 2011-03-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wxr0323 的回复:]
aspnetpager

地球人都知道。。
[/Quote]
对,和我的思路一样。
子夜__ 2011-03-01
  • 打赏
  • 举报
回复
子夜__ 2011-03-01
  • 打赏
  • 举报
回复
aspnetpager

地球人都知道。。
sihonglaoren 2011-03-01
  • 打赏
  • 举报
回复
这个很简单的,网上很多的。

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧