repeater分页和自动编号

时间:2009-03-30    点击:1945   

<div style="padding:5px;background-color:#dedede">
<asp:label ID="lblCurrentPage" runat="server"></asp:label>
&nbsp;
<asp:HyperLink id="lnkPrev" runat="server">上一页</asp:HyperLink>
&nbsp;
<asp:HyperLink id="lnkNext" runat="server">下一页</asp:HyperLink>
</div>
       
    <table width="30%" border="1">
      <tr>
        <td>编号</td>
        <td>姓名</td>
      </tr>
      <asp:Repeater id="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound1">
         <ItemTemplate>
           <tr>
             <td><asp:Label id="Label1" Runat="server"></asp:Label></td>
             <td><%#DataBinder.Eval(Container.DataItem, "username")%></td>
           </tr>   
         </ItemTemplate>
      </asp:Repeater>
    </table>

    public int CurPage = 1;
    public int PageSize = 10;

    protected void Page_Load(object sender, EventArgs e)
    {

        if (!IsPostBack)
        {
            BindGrid();
        }

    }

    private void BindGrid()
    {
        string sql = "select * from [user] order by userid desc";

        OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath("test.mdb"));

        OleDbDataAdapter da = new OleDbDataAdapter(sql, conn);

        DataSet ds = new DataSet();
       
        da.Fill(ds, "temp");

        PagedDataSource objPds = new PagedDataSource();
        objPds.DataSource = ds.Tables[0].DefaultView;
        objPds.AllowPaging = true;
        objPds.PageSize = PageSize;
       
        if (Request.QueryString["Page"] != null)
            CurPage = Convert.ToInt32(Request.QueryString["Page"]);
        else
            CurPage = 1;

        objPds.CurrentPageIndex = CurPage - 1;
        lblCurrentPage.Text = "当前页:" + CurPage.ToString();

        if (!objPds.IsFirstPage)
            lnkPrev.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage - 1);

        if (!objPds.IsLastPage)
            lnkNext.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage + 1);

        Repeater1.DataSource = objPds;

        Repeater1.DataBind();

    }

    protected void Repeater1_ItemDataBound1(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
    {
        if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
        {
            ((Label)e.Item.FindControl("Label1")).Text = Convert.ToString(e.Item.ItemIndex + 1 + (CurPage - 1) * PageSize);
        }
    }

演示 下载

ASP纪录集输出表格的方法
一个表单提交两个地址
删除ldb文件的办法
repeater嵌套
repeater控件序号,自动编号
> 返回     
地址:上海市普陀区胶州路941号长久商务中心 电话: QQ:
© Copyright 2012 上海网络 All Rights Reserved