repeater控件分页

写了下repeater控件的用法,还有点问题,AspNetPager 的RecordCount属性用的是得到所有的信息,这样就违背了分页的初衷了,因为自己偷了个懒,懒的在数据访问层写方法了

   ///<summary>
/// 页面加载
///</summary>
///<param name="sender"></param>
///<param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.AspNetPager1.RecordCount = NewsBLL.getNews().Count;
BindData();
}
}

///<summary>
/// 给repeater绑定数据
///</summary>
private void BindData()
{
this.rptNewsList.DataSource = NewsBLL.getNewsPage(this.AspNetPager1.PageSize, this.AspNetPager1.CurrentPageIndex);
this.rptNewsList.DataBind();
}

///<summary>
/// 页改变时
///</summary>
///<param name="sender"></param>
///<param name="e"></param>
protected void AspNetPager1_PageChanged(object sender, EventArgs e)
{
BindData();
}
        ///<summary>
/// 分页获取所有新闻信息
///</summary>
///<param name="pageSize">每页显示条数</param>
///<param name="pageIndex">当前页数</param>
public static DataTable NewsSelectPager(int pageSize, int pageIndex)
{
string sqlText = "SELECT News.NewsId AS NewsId, News.NewsTitle AS NewsTitle, News.NewsAuthor AS NewsAuthor, News.NewsDate AS NewsDate, News.NewsContent AS NewsContent, News.NewsClick AS NewsClick, NewsType.NewsTypeId AS NewsTypeId, NewsType.NewsTypeContent AS NewsTypeContent FROM News join NewsType on News.NewsType=NewsType.NewsTypeId";
SqlDataAdapter da = new SqlDataAdapter(sqlText, DB.conn);
DataSet ds = new DataSet();
da.Fill(ds, pageSize * (pageIndex - 1), pageSize, "temptbl");
DataTable dt = ds.Tables["temptbl"];
return dt;
}
基本上是在网上看的和自己总结的

转载于:https://www.cnblogs.com/Kiss920Zz/archive/2011/11/03/2234193.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值