新手求助。问一个分页代码的一部分(currentpageindex相关)

rabuhiromi 2013-03-23 07:25:51
这里边加红一段的作用求解释!

private void getGoods()
{
//获取数据
string strsql = "select * from 新闻信息 where 新闻类别 like '" + Request.Params["id"].ToString() + "' order by 流水号 desc";
DataTable dt = BaseClass1.ReadTable(strsql);

//实现分页
PagedDataSource objPds = new PagedDataSource();
objPds.DataSource = dt.DefaultView;
objPds.AllowPaging = true;
objPds.PageSize = 12;
int CurPage = Convert.ToInt32(this.LabelPage.Text);
objPds.CurrentPageIndex = CurPage - 1;
if (objPds.CurrentPageIndex < 0)
{
objPds.CurrentPageIndex = 0;
}


//只有一页时禁用上页、下页按钮
if (objPds.PageCount == 1)
{
LinkButtonPrev.Enabled = false;
LinkButtonNext.Enabled = false;
}
else//多页时
{
//为第一页时
if (CurPage == 1)
{
LinkButtonPrev.Enabled = false;
LinkButtonNext.Enabled = true;
}
//是最后一页时
if (CurPage == objPds.PageCount)
{
LinkButtonPrev.Enabled = true;
LinkButtonNext.Enabled = false;
}
}

this.LabelTotalPage.Text = Convert.ToString(objPds.PageCount);
GridView1.DataSource = objPds;
GridView1.DataBind();

}


//首页
protected void LinkButtonFirst_Click(object sender, EventArgs e)
{
this.LabelPage.Text = "1";
getGoods();
}
//上一页
protected void LinkButtonPrev_Click(object sender, EventArgs e)
{
this.LabelPage.Text = Convert.ToString(int.Parse(this.LabelPage.Text) - 1);
getGoods();
}
//下一页
protected void LinkButtonNext_Click(object sender, EventArgs e)
{
this.LabelPage.Text = Convert.ToString(int.Parse(this.LabelPage.Text) + 1); ;
getGoods();
}
//末页
protected void LinkButtonLast_Click(object sender, EventArgs e)
{
this.LabelPage.Text = this.LabelTotalPage.Text;
getGoods();
}
...全文
81 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zengjyxxz 2013-03-23
  • 打赏
  • 举报
回复
把当前界面Name属性为LabelPage的Label标签的Text属性赋给变量CurPage,即当前页面显示的页数,然后赋给对象objPds的CurrentPageIndex属性,即赋给对象objPds的当前页属性的索引。最后判断刚赋值的当前页索引是否小于0,若小于0,则赋为0,因为页码索引最小为0。
gxingmin 2013-03-23
  • 打赏
  • 举报
回复
int CurPage = Convert.ToInt32(this.LabelPage.Text); //界面上当前页数 objPds.CurrentPageIndex = CurPage - 1; //因为C#从0开始表示第1页,1表示第2页,...所以要把界面上的页面减1 if (objPds.CurrentPageIndex < 0) //因为页码最小是0,所以防止减多了,变成了负数, { objPds.CurrentPageIndex = 0; }

62,025

社区成员

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

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

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

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