`
raisun_1988
  • 浏览: 114295 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

AspNetPager分页控件之url重写

    博客分类:
  • .Net
阅读更多

type代表类型,pgid代表当前页码。

     int currentPageId = Convert.ToInt32(Request.QueryString["pgid"].ToString());
                 ViewState[
"currentPageId"] = currentPageId;
                
if (Session["ptype"] == null)
                 {
                     Session[
"ptype"] = string.Empty;
                 }

                
if (Request.QueryString["tag"] != null && Request.QueryString["tag"] != "")
                 {
                    
this.AspNetPager1.UrlRewritePattern = "listproduct/tag_{tag}_pgid_{0}.html".Replace("{tag}", Request.QueryString["tag"]);
                    
string tag = Server.HtmlDecode(Request.QueryString["tag"].ToString());
                     Session[
"Where"] = "proe.ProcTitle like '%" + tag + "%'";
             
                     txtProduceName.Text
= tag;
                 }
                
else if (Request.QueryString["type"] != null && Request.QueryString["type"] != "")
                 {
                    
this.AspNetPager1.UrlRewritePattern = "listproduct/type_{type}_pgid_{0}.html".Replace("{type}", Request.QueryString["type"]);
                    
string type = Request.QueryString["type"];
                    
if (type.Equals("product")) //表示所有的产品类型
                     {
                         Session[
"Where"] = string.Empty;
                     }
                    
else
                     {
                         Session[
"Where"] = " proe.ProductType like '" + type + "%'                         this.SelectThType1.Value = type;
                     }

 

一些属性需读者自己参考吴旗娃官方网址查阅。

1.上面的代码根据传过来的参数,然后指定分页控件的UrlRewritePattern。写在Page_Load里。

 

code
   protected void AspNetPager1_PageChanged(object src, EventArgs e)
     {
         AspNetPager1.CurrentPageIndex
= Convert.ToInt32(ViewState["currentPageId"].ToString());
        
this.PageDataBind();
     }

 

 

2.上面的代码是它的绑定数据的事件。

 

 

 

public void PageDataBind()
     {
        
try
         {
            
this.dlProducts.DataSource = null;
            
if (Session["Where"] == null)
             {
                 Session[
"Where"] = "";
             }
            
if (Session["Where"].ToString().Length > 0)
             {
                
this.AspNetPager1.RecordCount = GetProduceSizeBySQL(Session["Where"].ToString());
             }
            
else
             {
                
this.AspNetPager1.RecordCount = GetProductSize();
             }

            
string[] list = new string[] { "*", "Produce as proe inner join companyinfo as comp " +
        
"on proe.UserId=comp.UserId ", Session["Where"].ToString(), "proe.Id ", " order by proe.SendTime   desc ", ViewState["currentPageId"].ToString(), "15" };

            
//Response.Write(list.GetValue(0) + "___" + list.GetValue(1) + "___" + list.GetValue(2) + "___" + list.GetValue(3) + "___" + list.GetValue(4) + "___" + list.GetValue(5) + "___");

             AspNetPager1.CurrentPageIndex
= Convert.ToInt32(ViewState["currentPageId"].ToString());
             dlProducts.DataSource
= ProduceManage.GetProductsByProc(list);
             dlProducts.DataBind();
         }
        
catch (Exception)
         {
         }
     }

 

 

3.上面的代码通过存储过程返回当前页的数据给数据源控件。

  <webdiyer:AspNetPager ID="AspNetPager1" CssClass="anpager" CurrentPageButtonClass="cpb"
                     PageSize
="15" runat="server" HorizontalAlign="Center" Width="100%"
                     EnableUrlRewriting
="true" UrlRewritePattern="listproduct/type_{type}_pgid_{0}.html"
                     OnPageChanged
="AspNetPager1_PageChanged" FirstPageText="首页" LastPageText="尾页"
                    NextPageText
="下一页" PrevPageText="上一页" CustomInfoHTML="第<font color='red'><b>%currentPageIndex%</b></font>页/共%PageCount%页    每页%PageSize%条/共/%RecordCount%条" ShowPageIndexBox="Always" ShowCustomInfoSection="Right" CustomInfoSectionWidth="250px">
                
</webdiyer:AspNetPager>
分享到:
评论

相关推荐

    自定义分页控件[支持参数分页,URL重写].rar

    自定义分页控件[支持参数分页,URL重写]

    能用漂亮分页控件及Demo源码

    AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用主题(Theme)与皮肤(Skin)统一控件的整体样式,配合asp.net 2.0中的DataSource控件,AspNetPager只需要编写短短几行...

    AspNetPager7.2分页控件及源码

    AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用主题(Theme)与皮肤(Skin)统一控件的整体样式,配合asp.net 2.0中的DataSource控件,AspNetPager只需要编写短短几行...

    分页AspNetPager

    三、AspNetPager分页控件本身并不显示任何数据,而只显示分页导航元素,数据在页面上的显示方式与该控件无关,所以需要手写数据连接方法来配合, 四、结合TOP 。。。NOT IN 的通用存储过程分页方法使用AspNetPager...

    AspNetPager7.2分页控件及Demo源码

    AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用主题(Theme)与皮肤(Skin)统一控件的整体样式,配合asp.net 2.0中的DataSource控件,AspNetPager只需要编写短短几行...

    aspnetPager.dll

    AspNetPager分页控件不仅仅支持默认的PostBack方式分页,它还支持通过Url来实现分页以及Url重写功能,这使得访问者可以直接输入相应的Url来访问任何页面,并且搜索引擎也可以直接检索每个页面,若使用DataGrid或...

    AspNetPager分页控件UrlRewritePattern参数设置的重写代码

    AspNetPager分页控件UrlRewritePattern参数设置的重写代码,需要的朋友可以参考一下

    AspNetPagerv7.4.1分页控件及Demo源码2012919

    AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用主题(Theme)与皮肤(Skin)统一控件的整体样式, 配合asp.net 2.0中的DataSource控件,AspNetPager只需要编写短短...

    C#自定义分页控件

    三、AspNetPager分页控件本身并不显示任何数据,而只显示分页导航元素,数据在页面上的显示方式与该控件无关,所以需要手写数据连接方法来配合, 四、结合TOP 。。。NOT IN 的通用存储过程分页方法使用AspNetPager...

    AspNetPager

    AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用主题(Theme)与皮肤(Skin)统一控件的整体样式,配合asp.net 2.0中的DataSource控件,AspNetPager只需要编写短短几行...

    AspNetPager控件及Demo源码 v7.02

    4、功能强大灵活、使用方便、可定制性强: AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用主题(Theme)与皮肤(Skin)统一控件的整体样式,配合asp.net 2.0中...

    AspNetPager 7.2 7.02控件源码与示例

    AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用主题(Theme)与皮肤(Skin)统一控件的整体样式,配合asp.net 2.0中的DataSource控件,AspNetPager只需要编写短短几行...

    AspNetPager控件及Demo源码 v7.4.4.zip

    AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用主题(Theme)与皮肤(Skin)统一控件的整体样式,配合asp.net 2.0中的DataSource控件,AspNetPager只需要编写短短几行...

    AspNetPager控件及Demo源码 v7.4.4.rar

    AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用主题(Theme)与皮肤(Skin)统一控件的整体样式,配合asp.net 2.0中的DataSource控件,AspNetPager只需要编写短短几行...

    NET第3方分页控件AspNetPager

    详细的讲就是项目开发程序员自己开发的控件是第一方控件。平台提供的控件是第二方控件,你最开始在工具箱里看到的都是。由其他人提供的控件就是第三方控件。这些第三方控件一般是自定义控件或者用户控件...的分页控件。

    ASP.NET 各种分页技巧

    AspNetPager分页控件的所有导航元素都可以由用户进行单独控制,从6.0版起,AspNetPager支持使用主题(Theme)与皮肤(Skin)统一控件的整体样式,配合asp.net 2.0中的DataSource控件,AspNetPager只需要编写短短几行...

Global site tag (gtag.js) - Google Analytics