加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

自定义ASP.Net DataPager生成的HTML

发布时间:2020-12-15 20:54:43 所属栏目:asp.Net 来源:网络整理
导读:我在我的web项目中使用ListView和DataPager进行分页.它工作正常,但生成的分页 HTML只是一个包含一些超链接的span. 我想自定义HTML并在无序列表中显示链接(ul). 有人知道如何做到这一点?我能想到的一种方法是CSSFriendly适配器,但如果有更简单的方法,我不想
我在我的web项目中使用ListView和DataPager进行分页.它工作正常,但生成的分页 HTML只是一个包含一些超链接的span.

我想自定义HTML并在无序列表中显示链接(ul).

有人知道如何做到这一点?我能想到的一种方法是CSSFriendly适配器,但如果有更简单的方法,我不想这样做.

编辑:有人可以帮助我完成在模板中创建控件所需的确切步骤吗?抱歉愚蠢,但我无法想象这一部分,尽管广泛的谷歌搜索.

解决方法

您可以使用PagerTemplate指定要用于分页控件的标记.我不确定你在显示分页信息方面正在尝试做什么,如ul / li,但这应该足以让你在正确的轨道上开始.对不起,代码长跑到一边……

例如:

<asp:DataPager ID="DataPager1" runat="server" PagedControlID="gridInvoiceHistory"
            PageSize="20">
            <Fields>
                <asp:TemplatePagerField>
                    <PagerTemplate>
                        Page
                        <asp:Label runat="server" ID="labelCurrentPage" Text="<%# Container.TotalRowCount > 0 ? (Container.StartRowIndex / Container.PageSize) + 1 : 0 %>" />
                        of
                        <asp:Label runat="server" ID="labelTotalPages" Text="<%#  Math.Ceiling ((double)Container.TotalRowCount / Container.PageSize) %>" />
                    </PagerTemplate>
                </asp:TemplatePagerField>

编辑:这是一个更详细的解决方案:

<asp:TemplatePagerField>
     <PagerTemplate>
          <asp:BulletedList ID="listPages" runat="server" 
               DisplayMode="LinkButton" onclick="listPages_Click">
          </asp:BulletedList> 
     </PagerTemplate>
</asp:TemplatePagerField>

以下是代码隐藏中的内容:

protected void listPages_Click(object sender,BulletedListEventArgs e)
        {
            var pageNo = int.Parse((sender as BulletedList).Items[e.Index].Text);
            var startIndex = (pageNo - 1) * DataPager1.PageSize;
            DataPager1.SetPageProperties(startIndex,DataPager1.PageSize,true);
        }

您还需要做的是针对获取页面计数的方法对项目符号列表执行数据绑定,并返回页面链接所需文本的IEnumerable列表.标准警告:这是示例代码,如果没有彻底的审查,可能不应该在生产环境中使用!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读