如何在转发器中进行分页?

时间:2013-02-16 19:42:16

标签: c# repeater asp.net-4.5

如何对包含10条记录的表进行分页,以便一次只显示其中的一些记录 背后的代码是:

protected void Page_Load(object sender, EventArgs e)  
    {  
        Rep_Bind();  
    }  
    private void Rep_Bind()  
    {  
        SqlDataAdapter adp = new SqlDataAdapter("select * from tbbook",ConfigurationManager.ConnectionStrings["cn"].ConnectionString);  
        DataSet ds = new DataSet();  
        adp.Fill(ds);  
        Repeater1.DataSource = ds;  
        Repeater1.DataBind();  

    }  

这是html代码:

<asp:Repeater ID="Repeater1" runat="server" OnItemCommand="Repeater1_ItemCommand">
            <ItemTemplate>
                <table>
                    <tr>
                        <td>
                            <img src='<%#Eval("bookimg") %>'height="50" width="50" />
                            <b>Title:</b><%#Eval("booktit" )%><br />
                            <b>Author:</b><%#Eval("bookauth") %><br />
                            <b>Publisher:</b><%#Eval("bookpub") %><br />
                            <b>Price:</b><%#Eval("bookprc") %>
                        </td>
                    </tr>
                </table>

            </ItemTemplate>
        </asp:Repeater>

现在我想要next和prev的链接按钮。它显示了下一个和之前的记录。那我该怎么做呢?

1 个答案:

答案 0 :(得分:1)

您可以添加DataPager控件。

不确定您是否可以使用Repeater进行分页。你需要做很多工作才能让它运转起来。请检查此link

您可能希望改用ListView。

<asp:ListView ID="ListView1" runat="server">
                <ItemTemplate>
                    <table>
                        <tr>
                            <td>
                                <img src='<%#Eval("bookimg") %>' height="50" width="50" />
                                <b>Title:</b><%#Eval("booktit" )%><br />
                                <b>Author:</b><%#Eval("bookauth") %><br />
                                <b>Publisher:</b><%#Eval("bookpub") %><br />
                                <b>Price:</b><%#Eval("bookprc") %>
                            </td>
                        </tr>
                    </table>

                </ItemTemplate>
            </asp:ListView>
            <asp:DataPager ID="DataPager1" runat="server" PagedControlID="ListView1">
                <Fields>
                    <asp:NextPreviousPagerField ButtonType="Button" ShowFirstPageButton="True" ShowLastPageButton="True" />
                </Fields>
            </asp:DataPager>