private void kx()
    {
        OleDbConnection conn = new OleDbConnection(ConfigurationManager.ConnectionStrings["ua"].ConnectionString);
        string sql = "select * from post order by post_id desc";
        conn.Open();
        OleDbCommand com = new OleDbCommand(sql, conn);
        OleDbDataReader odr = com.ExecuteReader();
        if (odr.Read())
        {
            odr.Close();
            conn.Close();
            OleDbDataAdapter oda = new OleDbDataAdapter(sql, conn);
            DataSet ds = new DataSet();
            oda.Fill(ds, "title");
            PagedDataSource pds = new PagedDataSource();
            pds.DataSource = ds.Tables[0].DefaultView;
            pds.CurrentPageIndex = Convert.ToInt32(Label2.Text) - 1;
            pds.AllowPaging = true;
            pds.PageSize = 10;//设置每个页面显示的数量
            DataList1.DataSource = pds;
            Label1.Text = pds.PageCount.ToString();//获取所有页面
            Label2.Text = (pds.CurrentPageIndex + 1).ToString(); //获取当前页面
            this.lbtnpritPage.Enabled = true;
            this.lbtnFirstPage.Enabled = true;
            this.lbtnNextPage.Enabled = true;
            this.lbtnDownPage.Enabled = true;            if (pds.CurrentPageIndex < 1)
            {
                this.lbtnpritPage.Enabled = false;
                this.lbtnFirstPage.Enabled = false;
            }
            if (pds.CurrentPageIndex == pds.PageCount - 1)
            {
                this.lbtnNextPage.Enabled = false;
                this.lbtnDownPage.Enabled = false;
            }
            DataList1.DataBind();
            conn.Close();
        }
        else
        {
            odr.Close();
            conn.Close();
            Label4.Text = "还没有人给你留言!";
            this.lbtnpritPage.Enabled = false;
            this.lbtnFirstPage.Enabled = false;
            this.lbtnNextPage.Enabled = false;
            this.lbtnDownPage.Enabled = false;
            this.Label1.Text = "0";
        }
    }
    protected void lbtnpritPage_Click(object sender, EventArgs e)
    {
        this.Label2.Text = Convert.ToString(Convert.ToInt32(Label2.Text) - 1);
        this.kx();
    }
    protected void lbtnFirstPage_Click(object sender, EventArgs e)
    {
        this.Label2.Text = "1";
        this.kx();
    }
    protected void lbtnDownPage_Click(object sender, EventArgs e)
    {
        this.Label2.Text = this.Label1.Text;
        this.kx();
    }    protected void lbtnNextPage_Click(object sender, EventArgs e)
    {
        this.Label2.Text = Convert.ToString(Convert.ToInt32(Label2.Text) + 1);
        this.kx();
    }
  

解决方案 »

  1.   

    http://topic.csdn.net/u/20110511/19/059bf5f6-b22a-4a8c-80e2-5d03780c04fc.html
      

  2.   

    OleDbConnection,ConfigurationManager.ConnectionStrings,OleDbCommand,OleDbDataReader,ExecuteReader,PagedDataSource 这些类其实都很简单,到MSDN里查下就知道了
      

  3.   

    不知道就按ctrl+j或者ctrl+shift+空格
      

  4.   

    为什么设定当前索引值是这样表示的pds.CurrentPageIndex = Convert.ToInt32(Label2.Text) - 1;
      

  5.   

    我估计啊,前台显示出来的 当前页是:Label2.Text的值,第一页就是1,第2页就是2.。。然后pds.CurrentPageIndex 给他赋值的时候,0代表的才是第一页。1代表第二页所有才会这么赋值。
      

  6.   

    PagedDataSource实现数据库分页,这是Gridview、DataList等数据控件的实现原理。