asp.net中GridView实现自定义分页

lp370480 2009-04-09 11:17:31
我想在ASP.NET中实现自定义分页,比如像<首页><上一页><下一页><共几页>这样的,不要gridview自带的,我的数据源不是直接的,而是放在Page_Load事件中,有人建议去网上下个分页控件,但我不知道具体怎么操作,请各位帮忙,望详细!
我的CS代码如下:
public partial class Search1 : System.Web.UI.Page
{
public string ds;


public void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Request["zj"] != null)
{
if (Request["zj"] == "1")
{
str_zj += " and ([注册资本] > 1000 )";
}
else if (Request["zj"] == "2")
{
str_zj += " and ( [注册资本] <=1000 and [注册资本] >100)";
}
else if (Request["zj"] == "3")
{
str_zj += " and ([注册资本] <= 100 and [注册资本] >50 )";
}
else if (Request["zj"] == "4")
{
str_zj += " and ( [注册资本] <= 50 and [注册资本] > 1 )";
}
else if (Request["zj"] == "5")
{
str_zj += " and ([注册资本] <= 1 )";
}

}


string str_time = "";
if (Request["time1"] != null)
{

str_time += " and ([成立日期] between #" + Request["time1"] + "# and #" + Request["time2"] + "# )";
}

string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:/lp/WebSite3/app_data/王店.xls;Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";
OleDbConnection oleCon = new OleDbConnection(strCon);
OleDbDataAdapter oleDA = new OleDbDataAdapter("select * from [Sheet1$] where 1>0 " + str_time + str_zj + " ", oleCon);
DataSet ds = new DataSet();
oleDA.Fill(ds);
dgBang.DataSource = ds;
dgBang.DataBind();
}
}
}
...全文
605 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyq11 2009-04-09
  • 打赏
  • 举报
回复
用分页控件aspnetpager
参考
参考
marssongxs 2009-04-09
  • 打赏
  • 举报
回复
分页也好写啊,可以自己写,也不一定要用gridview也可以从后台输出,这样更容易控制,更灵活,分页就更简单了
zftow110 2009-04-09
  • 打赏
  • 举报
回复
分页控件方便吧!自带的分页不太方便,好象VS2008自己有个分页控件
ojekleen 2009-04-09
  • 打赏
  • 举报
回复
什么是 不是直接的而是放在Page_Load事件中?

private void bind()
{
string str_time = "";
if (Request["time1"] != null)
{

str_time += " and ([成立日期] between #" + Request["time1"] + "# and #" + Request["time2"] + "# )";
}

string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:/lp/WebSite3/app_data/王店.xls;Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";
OleDbConnection oleCon = new OleDbConnection(strCon);
OleDbDataAdapter oleDA = new OleDbDataAdapter("select * from [Sheet1$] where 1>0 " + str_time + str_zj + " ", oleCon);
DataSet ds = new DataSet();
oleDA.Fill(ds);
dgBang.DataSource = ds;
dgBang.DataBind();
}


public void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.bind();}


girdview分页事件

private void dgBang_pagechanging(objece sender,Eventargs e)
{
dgBang.pageindex=e.newpageindex;
this.bind();
}
lp370480 2009-04-09
  • 打赏
  • 举报
回复
本人刚学asp.NET 请问这些自定义分页的一些数值从那得来?比如:怎么从gridview取得记录集有多少条记录,分页大小,总页数,当前页数。因为我们必须保证自定义分页跟gridview中显示的记录集要一致
lp370480 2009-04-09
  • 打赏
  • 举报
回复
请问你空间怎么进去啊?
皓月明 2009-04-09
  • 打赏
  • 举报
回复
挺好做的,你去我空间看看去吧,我那有代码
lp370480 2009-04-09
  • 打赏
  • 举报
回复
ojekleen 提供的代码 用gridview自带分页方式是可以运行的,但怎么在gridview上实现自定义分页,不用gridview自带分分页,有没有相关代码贴出来让我借鉴一下
qq330077 2009-04-09
  • 打赏
  • 举报
回复
学学,我也觉得自带分页功能不太好
ruanzheng_dotnet 2009-04-09
  • 打赏
  • 举报
回复
可以用内置对象进行分页,PageDataSource对象,下面有很多的对象,自己去看看资料,应该不是很难.

62,268

社区成员

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

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

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

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