我在做一个网站项目,涉及新闻时,用了ListView控件显示新闻列表.但列表是绑定在一个lisview集合中的.没有用listview默认绑定的数据源的方式(sql数据库的方式),就是在后台进行的,即在页面加载时绑定.代码写在当前文件的.cs的pageload事件中,直接显示是可以的.但是问题在分页上,当点击分页时,出现了错误.在网上找了很多提示,按照提示都做了,但没有效果.各位大侠吗,帮一下我,工发一个邮件给我:[email protected],谢谢了.
调试欢乐多
在当前页的cs代码的pageload事件中,
list<news> news=new List<news>();
listview.datasource=news;
listviews.DataBind();基本就是这个意思.这个在前台显示是可以的,已经顺利通知并成功了.但是因为我在拖ListView1时,启动了分页功能.现在就是这个分页功能不能用啊,报错.
listviews.DataBind();你不觉得多了个S嘛
/// <summary>
/// 按SQL文分页
/// </summary>
public void BindList()
{
string sort = GetSortName();
List<Book> list = new BookManage().GetAllBookByPage(sort, pageSize, CurrentPageIndex,null);
int totalCount = bm.BookCount(null);
PageCount = (totalCount / pageSize)
+ (totalCount % pageSize > 0 ? 1 : 0);
this.lblPage.Text = "第" + CurrentPageIndex + "页,共" + PageCount + "页";
this.lblTrun.Text = "第"+CurrentPageIndex+"页";
this.dlBookList.DataSource = list;
this.dlBookList.DataBind();
}
/// <summary>
/// 每页显示10条数据
/// </summary>
private int pageSize = 3;
#region 当前页数
/// <summary>
/// 当前页数
/// </summary>
public int CurrentPageIndex
{
set
{
ViewState["CurrentPageIndex"] = value;
}
get
{
return Convert.ToInt32(ViewState["CurrentPageIndex"]);
}
}
#endregion
#region 总页数
/// <summary>
/// 总页数
/// </summary>
public int PageCount
{
set
{
ViewState["PageCount"] = value;
}
get
{
return Convert.ToInt32(ViewState["PageCount"]);
}
}
#endregion
#region 上一页单击事件
/// <summary>
/// 上一页单击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lbtnPre_Click(object sender, EventArgs e)
{
this.CurrentPageIndex--;
this.BindList();
this.SetButtonStatus();
}
#endregion
#region 下一页单击事件
/// <summary>
/// 下一页单击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lbtnNext_Click(object sender, EventArgs e)
{
this.CurrentPageIndex++;
this.BindList();
this.SetButtonStatus();
}
#endregion