ListView控件和DataPager控件配合方法

【出现频率】
★★★☆☆
【解答】
将DataPager控件配合ListView控件即可实现ListView控件的分页。DataPager控件可存在于对应的ListView控件内部,但是必须在LayoutTemplate模板内,如以下代码所示。
<asp:ListView runat="server" ID="LView">
<LayoutTemplate>
数据项布局;
<asp:DataPager ID="Pager" runat="server" PageSize="10" >                     
<Fields>
            页面导航对象设置;
        </Fields>
    </asp:DataPager>
</LayoutTemplate>     
<ItemTemplate>
数据项模板内容;
</ItemTemplate>
</asp:ListView>
还可以将DataPager控件设置于对应的ListView控件的外部,不过这时编程者需要将DataPager控件的“PagedControlID”属性设置为对应ListView控件的“ID”属性值,如以下代码所示。
<asp:ListView runat="server" ID="LView">
<LayoutTemplate>
数据项布局;
</LayoutTemplate>     
<ItemTemplate>
数据项模板内容;
</ItemTemplate>
</asp:ListView>
<asp:DataPager ID="Pager" runat="server" PageSize="10" PagedControlID="LView">                     
<Fields>
页面导航对象设置;
</Fields>
</asp:DataPager>
【分析】
本题考查面试者对ListView控件分页实现的基本认识。DataPager控件可以提供分页功能给实现了IPageableItemContainer接口的控件,目前只有ListView控件符合这个要求。有了DataPager控件的配合,ListView控件可以很方便地完成分页功能,并通过DataPager控件的“PageSize”属性可设置每页的记录数量。除此之外,在DataPager控件中的 <Fields>内设置分页导航对象可完成分页后的跳转,如以下代码所示。
<asp:DataPager ID="Pager" runat="server" PageSize="10" PagedControlID="LView">                     
<Fields>
<asp:NextPreviousPagerField ButtonType="Button" ShowFirstPageButton="True"
                          ShowNextPageButton="False" ShowPreviousPageButton="False" />
<asp:NumericPagerField ButtonCount="5" />
<asp:NextPreviousPagerField ButtonType="Button" ShowLastPageButton="True"
                          ShowNextPageButton="False" ShowPreviousPageButton="False" />
<asp:TemplatePagerField OnPagerCommand="Pager_Command">
<PagerTemplate>
      <asp:TextBox ID="PageNum" runat="server"> </asp:TextBox>
      <asp:Button ID="GetPage" runat="server"  Text="跳转" CommandName="go"/>
  </PagerTemplate>
</asp:TemplatePagerField>;
</Fields>
</asp:DataPager>
在DataPager 控件中可以使用NumericPagerField对象、NextPreviousPagerField对象显示内置的导航界面。NumericPagerField对象可以显示指定数量的页码超级链接,让浏览用户用户按页码选择数据页,NextPreviousPagerField对象可以让用户逐页浏览数据页,也可以直接跳转到首页或末页。如果编程者需要更灵活的分页导航布局,可添加PagerTemplate到TemplatePagerField控件中,自定义分页导航模板内容,不过编程者需要自定义OnPagerCommand事件处理方法。以上代码中,同时使用了多种导航方法,创建混合分页接口。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值