• AspNetPager 多条件分页查询


        AspNetPager 这个分页控件一般做后台基本都知道的,我就不多说了(说明与下载链接:http://www.webdiyer.com/Controls/AspNetPager),嘿嘿!其实我也是刚刚用这个控件,也遇到了一些问题。

    下面我就分享一下我遇到的问题与解决的办法。

    1、首先我遇到的第一个问题就是,应用后想跳页,但是找了好几个源码都不对。就是不出来。仔细一对比,少些了一个 ShowInputBox="Always" 属性,下面是完整的代码,可以直接拷贝。

    1 <cc1:AspNetPager ID="AspNetPager1" runat="server" Width="100%" UrlPaging="true" FirstPageText="首页"
    2             LastPageText="末页" NextPageText="下页" PrevPageText="上页" ShowPageIndexBox="Always"
    3             ShowInputBox="Always" PageIndexBoxType="TextBox" HorizontalAlign="right" PageSize="10"
    4             NumericButtonCount="6" NumericButtonTextFormatString="{0}" SubmitButtonText="跳转"
    5             SubmitButtonStyle="botton" OnPageChanged="pager_PageChanged">
    6 </cc1:AspNetPager>
    View Code

    2、第二个问题,我想显示一下,第几页、共多少页、当前是多少页、然后我疑惑了,后来我发现了另外两个属性可以完成这件事。 CustomInfoHTML=“拼接AspNetPager中相关值”  和ShowCustomInfoSection=“位置”,代码如下:

    1 <cc1:AspNetPager ID="AspNetPager1" runat="server" Width="100%" UrlPaging="true" FirstPageText="首页"
    2             LastPageText="末页" NextPageText="下页" PrevPageText="上页" ShowPageIndexBox="Always"
    3             ShowInputBox="Always" PageIndexBoxType="TextBox" HorizontalAlign="right" PageSize="10"
    4             NumericButtonCount="6" NumericButtonTextFormatString="{0}" SubmitButtonText="跳转"
    5             CustomInfoHTML="第 <font color='red'><b>%CurrentPageIndex%</b></font> 页 共 %PageCount% 页 显示 %StartRecordIndex%-%EndRecordIndex% 条"
    6             ShowCustomInfoSection="left" SubmitButtonStyle="botton" OnPageChanged="pager_PageChanged">
    7 </cc1:AspNetPager>
    View Code

    3、其实第二个问题不解决也行,因为意义不大。接下来遇到的才是真正的问题。我发现根据条件查到结果了,但点击下一页时,又把全部的查出来了,千万不要直接使用上边的代码,我敢保证一定会出错。如何保持搜索的结果,也就是你的条件,ViewState视图状态觉对是首选,现在我们就在后台使用ViewState["Where"]来保存条件。亲!发现问题了吗?

    那好如果发现我说的问题了,那就换存储方式吧,当然我想到了Session["Where"],嘿嘿……奇迹出现了,我们的条件分页生效了,但是问题是为什么ViewState["Where"]就不好使呢?

    经过我的排查,UrlPaging="true"  这个属性去掉,我们的ViewState["Where"]就好使了。不过去掉之后,Url就不给你干活了,当然方法还有很多,看个人需求。如果要是想要Url 那就使用Session吧!

    1 <cc1:AspNetPager ID="AspNetPager1" runat="server" Width="100%" FirstPageText="首页"
    2             LastPageText="末页" NextPageText="下页" PrevPageText="上页" ShowPageIndexBox="Always"
    3             ShowInputBox="Always" PageIndexBoxType="TextBox" HorizontalAlign="right" PageSize="10"
    4             NumericButtonCount="6" NumericButtonTextFormatString="{0}" SubmitButtonText="跳转"
    5             SubmitButtonStyle="botton" OnPageChanged="pager_PageChanged">
    6 </cc1:AspNetPager>
    View Code

    后台代码就不粘了,看这篇文章的你绝对后台没问题。

  • 相关阅读:
    2. 环形路加油
    1. 元素累加
    开始在线练习50题。
    C# 搜索关键词
    Python调用OpenCV几何变换
    Tensorflow加载多幅图像进一个tensor
    Cmake构建OpenCV测试例子
    Linux利用本地http下载解决一些需要联网下载的问题
    Python调用OpenCV算术操作
    Python调用OpenCV阈值化
  • 原文地址:https://www.cnblogs.com/zevfang/p/3225312.html
Copyright © 2020-2023  润新知