我用asp.net写了一个后台程序!用repeater读取数据库的资料!但是数据库资料太多!!希望望高手给一个!!上一页、下一页、翻到第一页、尾页的源码
                       <asp:Button Font-Size="X-Small" ID="Button4" runat="server" Text="首页" />
                    <asp:Button Font-Size="X-Small" ID="Button3" runat="server" Text="上一页" />
                    <asp:Button Font-Size="X-Small" ID="Button2" runat="server" Text="下一页" />
                    <asp:Button Font-Size="X-Small" ID="Button1" runat="server" Text="尾页" />
这事那4个按钮!!在这小弟谢过了

解决方案 »

  1.   

    在网上去下分页控件吧
    aspnetpager
      

  2.   

    aspnetpager不错的.
    还有pageddatasource控件可以用
      

  3.   

    可以按你的情况改下面的一个。
    public partial class user__Repeater : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                this.labPage.Text = "1";
                this.contrlRepeater();
            }
        }
        //获取指字符个数的字符 
        public string cuts(string aa, int bb)
        {
            if (aa.Length <= bb) { return aa; }
            else { return aa.Substring(0, bb); }
        }
        //Repeater分页控制显示方法 
        public void contrlRepeater()
        {
            PB pb1 = new PB();
            DataSet ss = new DataSet();
            ss = pb1.returnDs("select top 200 * from orders");
            PagedDataSource pds = new PagedDataSource();
            pds.DataSource = ss.Tables["temptable"].DefaultView;
            pds.AllowPaging = true;
            pds.PageSize = 10;
            pds.CurrentPageIndex = Convert.ToInt32(this.labPage.Text) - 1;
            Repeater1.DataSource = pds;
            LabCountPage.Text = pds.PageCount.ToString();
            labPage.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;
            }
            Repeater1.DataBind();
        }
        protected void lbtnpritPage_Click(object sender, EventArgs e)
        {
            this.labPage.Text = Convert.ToString(Convert.ToInt32(labPage.Text) - 1);
            this.contrlRepeater();
        }
        protected void lbtnFirstPage_Click(object sender, EventArgs e)
        {
            this.labPage.Text = "1";
            this.contrlRepeater();
        }
        protected void lbtnDownPage_Click(object sender, EventArgs e)
        {
            this.labPage.Text = this.LabCountPage.Text;
            this.contrlRepeater();
        }    protected void lbtnNextPage_Click(object sender, EventArgs e)
        {
            this.labPage.Text = Convert.ToString(Convert.ToInt32(labPage.Text) + 1);
            this.contrlRepeater();
        }
    }
    public class PB
    {
        public PB()
        {
        }
        public DataSet returnDs(string sqlStr)
        {        DataSet ds = new DataSet();
            SqlConnection conn = new SqlConnection("server=.;database=Northwind;integrated security=true");
            try
            {           
                SqlCommand comm = new SqlCommand(sqlStr, conn);
                comm.CommandTimeout = 20;
                conn.Open();
                SqlDataAdapter sda = new SqlDataAdapter(comm);
                sda.Fill(ds, "temptable");
                return ds;
            }
            catch (Exception e)
            {
                throw (e);
                return ds;
            }
        }}