datalist分页设置
来源:互联网 发布:冬季男装品牌 知乎 编辑:程序博客网 时间:2024/06/05 18:50
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { //datalist绑定 DataList1_content(); } } /*-------------datalist分页----------------------------------------------*/ private void DataList1_content() { PagedDataSource ps = new PagedDataSource();//分页实例 DataTable dtt = new InnerBLL().SelectAll(); ps.DataSource = dtt.DefaultView;//绑定分页 ps.AllowPaging = true; //允许分页 ps.PageSize = 10;//每页条数 int maxpage;//总共多少页 if (ps.Count == 0) return; if (ps.DataSourceCount % ps.PageSize > 0)//计算总页数 { maxpage = ps.DataSourceCount / ps.PageSize + 1;//有余数要加1 } else { maxpage = ps.DataSourceCount / ps.PageSize; } Session["maxpage"] = maxpage;//保存总页数,在翻页判断时使用 int curpage;//当前页码 if (Session["curpage"] == null) { curpage = 1;//初始化页码 } else { curpage = Convert.ToInt32(Session["curpage"].ToString()); } ps.CurrentPageIndex = curpage - 1;//页索引从0开始编号 Session["curpage"] = ps.CurrentPageIndex + 1;//当前页码 lblpage.Text = "第" + Session["curpage"].ToString() + "页(共" + Session["maxpage"].ToString() + "页)"; DataList1.DataSource = ps; DataList1.DataBind(); } /*----------------------分页按钮----------------------*/ //首页 public void lbfir_Click(object sender, System.EventArgs e) { Session["curpage"] = 1; DataList1_content(); } //上一页 public void lbpre_Click(object sender, System.EventArgs e) { if (Convert.ToInt32(Session["curpage"].ToString()) > 1)//当前页大于1,即首页,则减1 { Session["curpage"] = Convert.ToInt32(Session["curpage"].ToString()) - 1; } DataList1_content(); } //下一页 public void lbnext_Click(object sender, System.EventArgs e) { if (Convert.ToInt32(Session["curpage"].ToString()) < Convert.ToInt32(Session["maxpage"].ToString()))//当前页小于最大页,则加1 { Session["curpage"] = Convert.ToInt32(Session["curpage"].ToString()) + 1; } DataList1_content(); } //末页 public void lblast_Click(object sender, System.EventArgs e) { Session["curpage"] = Convert.ToInt32(Session["maxpage"].ToString()); DataList1_content(); } /*----------------------分页按钮end----------------------*/ //转到指定页 public void bt1_Click(object sender, System.EventArgs e) { int num; if (int.TryParse(tb1.Text,out num))//判断输入的是否是整数 { if (Convert.ToInt32(Session["maxpage"].ToString()) >= num & num>0) { Session["curpage"] = num;//计算指定页 DataList1_content(); } else { Page.ClientScript.RegisterStartupScript(GetType(), "message", "<script>alert('请先输入正确页码!')</script>"); } } else { Page.ClientScript.RegisterStartupScript(GetType(), "message", "<script>alert('请先输入正确页码!')</script>"); } } /*--------------------------------------datalist分页end----------------------------------------------*/