【发布时间】:2011-07-09 00:27:18
【问题描述】:
我在数据分页器中有一个中继器来显示一些页码,我正在使用一个模板分页器字段,因为里面还有其他数据,并且因为我希望能够重复使用它,所以我已将其抽象为嵌入在数据分页器中的用户控件。
这是带有用户控件的寻呼机
<asp:DataPager ID="MessagesDataPager" SkinID="AdminCorrespondenceDataPager" PagedControlID="MessagesListView" runat="server">
<Fields>
<asp:TemplatePagerField OnPagerCommand="Pager_OnPagerCommand">
<PagerTemplate>
<uc:ListViewPager Id="Pager" runat="server" />
</PagerTemplate>
</asp:TemplatePagerField>
</Fields>
</asp:DataPager>
这里是用户控件
<p class="pag">
<span class="pagerSummaryPages"><asp:Literal ID="SummaryLiteral" runat="server" /></span>
<asp:LinkButton ID="PreviousPageButton" runat="server" Text="< Previous" OnCommand="ChangePageCommand" CommandArgument="-1" />
<span>
<asp:Repeater ID="PageLinksRepeater" OnItemDataBound="PageLinksRepeater_OnItemDataBound" runat="server">
<ItemTemplate>
<asp:LinkButton ID="PageLink" CssClass="pageLink" runat="server" OnCommand="ChangePageCommand" />
</ItemTemplate>
</asp:Repeater>
</span>
<asp:LinkButton ID="NextPageButton" runat="server" Text="Next >" OnCommand="ChangePageCommand" CommandArgument="1" />
</p>
因此,不在中继器中的链接按钮工作正常,并且模板寻呼机字段接收 PagerCommand 事件,但是当单击中继器内的链接按钮时,它们会触发回发和它们自己的命令事件,但 PagerCommand 事件TemplatedPagerField 永远不会被触发。
重点是一个可重复使用的控件,它生成类似于 25-50 of 167 的分页值
【问题讨论】:
标签: asp.net repeater datapager