0

我有个问题。

我写了这段代码:

<asp:ListView ID="ListComment" runat="server">
        <LayoutTemplate>
            <asp:PlaceHolder ID="itemPlaceHolder" runat="server"></asp:PlaceHolder>
        </LayoutTemplate>
        <ItemTemplate>
            <div class="CommentArea" id='Comment<%#Eval("Id")%>'>
                <div class="UserDate">
                    <span class="font07em fontunderline"><b>Inviato da: </b></span><span class="font07em"><b><a href="#"><%#Eval("Autore") %></a></b></span><span class="font07em fontunderline"><b> alle <%#Eval("Orario", "{0:hh':'mm}") %></b></span>
                </div>
                <div class="LikeDontLike">
                    <span class="font07em"><b>
                        <asp:LinkButton runat="server" ID="Like" CommandArgument='<%#Eval("Id")%>' OnClick="Mipiace_Click" >Like</asp:LinkButton>: <%#Eval("Mipiace") %> /
                        <asp:LinkButton runat="server" ID="DontLike" CommandArgument='<%#Eval("Id")%>' OnClick="Nonmipiace_Click" >Don't Like</asp:LinkButton>: <%#Eval("Nonmipiace") %></b></span>
                </div>
                <div class="UserComment">
                    <span class="font07em"><%#Eval("Commento") %></span>
                </div>
            </div>
        </ItemTemplate>
    </asp:ListView>
    <asp:DataPager runat="server" ID="PageComment" PagedControlID="ListComment" PageSize="2">
        <Fields>
            <asp:NumericPagerField />
        </Fields>
    </asp:DataPager>

当我运行它并单击 DataPager 的页面时,它不会更改视图。如果我再次单击,它会改变。我试图将 DataPager 放入 LayoutTemplate,但我总是遇到同样的问题。我该如何解决?谢谢大家!

4

2 回答 2

1

我想您正在使用 page_load 事件将您的列表视图绑定到您的数据源。您需要添加一个新的处理列表视图的 PagePropertiesChanged 事件以再次重新绑定您的列表视图。最后,您的数据绑定代码将在 page_load 事件(无需检查回发)和 listview_PagePropertiesChanged 事件中重复。

于 2014-06-16T21:07:21.683 回答
-1

您需要添加

    <asp:ListView ID="ListComment" runat="server" OnPagePropertiesChanging="Listcomment_PagePropertiesChanging">

然后在代码隐藏中

protected void Listcomment_PagePropertiesChanging(object sender, PagePropertiesChangingEventArgs e)
{
    this.ListComment.SetPageProperties(e.StartRowIndex, e.MaximumRows, false);

    // Rebind your ListComment
}
于 2013-11-19T16:31:45.907 回答