本次改动非常大,已和先前版本完全不兼容,所以升级的朋友注意一下,请看我的主页上关于本次升级新增和改动的功能,因为改动太大,所以可能有自己没有发现的bug以及一些需要改进的功能等,希望大家试用时能提供意见和建议给我,我会尽快正以发布正式版。谢谢支持!升级说明及下载: http://www.webdiyer.com

解决方案 »

  1.   

    我装的是.net framework 2.0,不行,还说是要装1.1
      

  2.   

    to simplemurrina() :什么说要装1.1?哪里的错误?
      

  3.   

    http://sc.1380000.com/Album我的分页控件的演示,整理一下,然后再公布一下。
      

  4.   

    上面的是URL分页方式,支持URL重写,自动识别页号,可以自动传递查询参数,自动添加查询条件。比如:http://sc.1380000.com/Album/list.htm?key=FpxX7fETQIjJX88xxZcifKzYd8Hrbcfs
    (以“爱”最为查询条件)。还有一种 postback得分页形式,演示网址:http://www.1380000.com/count/Spider.aspx
    (这是一个流量统计的程序。也打算在近期内共享源码!)
      

  5.   

    to jyk(今天由我来写的代码,明天就让程序自己完成!喜欢编程):升级以前的程序其实很简单,如果用过ChinesePageIndex这个属性的话,把它删除了,这个属性基本上没有用过,所以不是问题,最主要的就是PageChanged事件的签名改变了,原来的事件处理程序是类似:ChangePage(object src,PageChangedEventArgs e),新版中不再有PageChangedEventArgs这个类,PageChanged事件处理程序变为类似这样:ChangePage(object src,EventArgs e),注意第二个参数现在是EventArgs而不再是PageChangedEventArgs了,在PageChanged事件处理程序中不再需要设置AspNetPager的CurrentPageIndex的值了,现在控件会自动设置,所以你只需要绑定数据就行了,原来通过PageChangedEventArgs传递的NewPageIndex也就不需要了,新增了事件PageChanging,如果想取消分页事件,可以在这个事件处理程序中进行,这和asp.net 2.0中GridView的分页方式基本相同。
      

  6.   

    安装弹出的错误,
    此安装程序需要.net framework版本1.14322,请安装后重新运行此安装程序
      

  7.   

    to simplemurrina() :你大概下载的是4.3.4版的安装程序,那是for vs2003的,当然得装.net 1.1,6.0.0才是for vs2005的,这个帖子说的就是6.0.0版的。to jyk(今天由我来写的代码,明天就让程序自己完成!喜欢编程):6.0.0 for vs2005只支持asp.net 2.0,这个版本的控件大家用的很少,因为上个月才发了支持asp.net 2.0版的分页控件5.0版,如果要把asp.net 1.1版的程序升级到2.0,就算AspNetPager不需要做任何改动,程序中其它很多地方都得修改的,从以前版本的AspNetPager升级到6.0.0,只要没用过ChinesePageIndex那个属性,那么改的只有一个地方,就是PageChanged事件处理程序,把参数中的PageChangedEventArgs前面的PageChaned删除掉,只用EventArgs 就行了,另外事件处理程序中设置AspNetPager.CurrentPageIndex=e.NewPageIndex这句代码删除掉即可,没有其中需要改动的,这个正式发布时我会写一个详细的升级说明。谢谢!
      

  8.   

    既然不兼容了要升级肯定要修改一些东西的,但有些东西兼容升级时也不一定就什么都不用改,就比如asp.net 1.1的程序升级到2.0,虽然微软的软件一向兼容做得很好,但升级时也会遇到意想不到的麻烦,所以我们asp.net 1.1的项目都不敢升级,只能等以后时机成熟了有更多时间了再说。分页控件这次发布后虽然还会继续升级,但不会再有不兼容的问题,因为以后只是增加功能,这次删除属性和改动事件签名是下了很大决心的,我自己就是做asp.net的,当然知道一个控件两个版本不兼容升级时意味着什么,但我想问题不会太大,用查找/替换的方法,一个项目中就算有一二百个需要修改的页面,最快一两分钟就可以完成,因为新版本中修正了不少bug,增加了对Url重写的支持,特别是新增的CloneFrom属性,对于经常用两个AspNetPager同时为一个数据绑定控件分页的网友来说,带来了非常大的方便性,不用再重复设置相同的属性就可以保持两个分页控件完全同步,特别是这个方法解决了Url分页时每个分页控件都会绑定一次数据的问题,大大提高了程序性能。
      

  9.   

    支持webdiyer(陕北吴旗娃),很好用的控件,还可以自动生成代码,很爽
      

  10.   

    >>对于经常用两个AspNetPager同时为一个数据绑定控件分页的网友来说
    看了半天才看懂,只不过是在一个列表的上下两面都有分页导航(就是上一页下一页),这也不用加两个控件呀。你们都是这么解决的吗?
    我会使用javascript 的方式解决。1、添加一个控件。2、把这个控件放到div(div1)里面。div1放在列表的上面3、在列表的下面再放一个空的div(div2)。4、填写javascript 脚本,在onload里面执行。5、提取div1里面的 内容(innerHTML),放到div2里面。6、完成。这样不就可以了嘛。为什么还要放两个控件呢?为什么还要加个CloneFrom属性??
    ps:我的这种方法在我的分页控件里已经试验过,是可以的。
      

  11.   

    UP.net专业做网站,计算机毕业设计
    QQ:381991787
    Email:[email protected]
      

  12.   

    6.0.0 虽然支持URL重写的分页吧!  我看了,如果新闻带分类的话, 分页路径存在严重问题!
      

  13.   

    6.0.0 虽然支持URL重写的分页吧!  我看了,如果新闻带分类的话,并且分类也用URL重写的话, 分页路径存在严重问题! 我测试了一上午的出的结果!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      

  14.   

    楼主,你的url重写功能使用字符串匹配,如果url传递的参数有两个以上怎么办?能不能这样改:
    我以前对你的前面的一个版本有一个修改,增加了一个StrPre的属性,如果StrPre不存在或为空时,不启用重写,如果StrPre = "c",则自动改变url的输出为c_para1_para2.aspx的格式。
      

  15.   

    1)增加一个Property以支持在自定义控件上添加重写时的字符前缀        /// <summary>
            /// 为UrlRewriting时增加可选参数, StrPre的值将成为重写时的前缀,如果值为空或不存在则表示不启用url重写。
            /// </summary>
            [Browsable(true),
            Category("分页"),
            DefaultValue(""),
            Description("url rewriting时的前缀")]
            public string StrPre
            {
                get
                {
                    object obj = ViewState["StrPre"];
                    return (obj == null) ? "" : (string)obj;
                }
                set
                {
                    ViewState["StrPre"] = value;
                }
            }2)修改BuildUrlString以变更url的输出格式,调用StrPre参数以便可以用户在aspx页面修改重写字符前缀 /// <summary>
    /// 当使用Url分页方式时,在当前Url上加入分页参数,若该参数存在,则改变其值。
    /// </summary>
    /// <param name="col">要加入到新Url中的参数名和值的集合。</param>
    /// <returns>分页导航按钮的超链接字符串,包括分页参数。</returns>
    private string BuildUrlString(NameValueCollection col)
    {
    int i;
    string tempstr="";
    if(urlParams==null||urlParams.Count<=0)
    {
    for(i=0;i<col.Count;i++)
    {
    tempstr+=String.Concat("&",col.Keys[i],"=",col[i]);
    }
    return String.Concat(currentUrl,"?",tempstr.Substring(1));
    }
    NameValueCollection newCol=new NameValueCollection(urlParams);
    string[] newColKeys=newCol.AllKeys;
    for(i=0;i<newColKeys.Length;i++)
    {
    newColKeys[i]=newColKeys[i].ToLower();
    }
    for(i=0;i<col.Count;i++)
    {
    if(Array.IndexOf(newColKeys,col.Keys[i].ToLower())<0)
    newCol.Add(col.Keys[i],col[i]);
    else
    newCol[col.Keys[i]]=col[i];
    }
    StringBuilder sb=new StringBuilder();            if (StrPre != "")
                {
                    for (i = 0; i < newCol.Count; i++)
                    {
                        sb.Append("_" + newCol[i]);
                    }
                    string sbtostring = sb.ToString().Substring(1) + ".aspx";
                    sbtostring = StrPre + "_" + sbtostring;
                  
                    //string url = System.Web.HttpContext.Current.Request.RawUrl.ToLower();
                    currentUrl = currentUrl.Substring(0, currentUrl.LastIndexOf("/")) + @"/";
                    return String.Concat(currentUrl, sbtostring);
                    //return String.Concat(url, "", sbtostring);
                }
                else
                {
                    for (i = 0; i < newCol.Count; i++)
                    {
                        sb.Append("&");
                        sb.Append(newCol.Keys[i]);
                        sb.Append("=");
                        sb.Append(newCol[i]);
                    }
                    return String.Concat(currentUrl, "?", sb.ToString().Substring(1));
                }
    }
      

  16.   

    因为我主要用VB,所以C#如果修改的不简炼,请勿见笑,也忽见怪谢谢你的控件,我使用觉得很顺手
      

  17.   

    url重写功能使用字符串匹配,如果url传递的参数有两个以上怎么办? 6.0.0 虽然支持URL重写的分页吧!  我看了,如果新闻带分类的话,并且分类也用URL重写的话, 分页路径存在严重问题! 我测试了一上午的出的结果!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      

  18.   

    to jyk(今天由我来写的代码,明天就让程序自己完成!喜欢编程。和气生财。共同提高。共同进步!) :
    用脚本实现不了的,而且就算能实现了,也比拖一个控件设置一个属性要麻烦多了,更何况不是谁都熟悉脚本的。谢谢!to rosanshao(罗三少):
    源代码正式发布时一块发布to zhangyunjian1(赚钱吧) :
    能否详细说下什么样的问题?比如什么样的url,重写后要变成什么样的url,发现什么样的问题等?谢谢!
      

  19.   

    to yangao(偶新手 请问门在哪里?) :
    升级很简单,注意两点就行了:
    1、如果用过ChinesePageIndex属性,那么去掉它,这个属性基本上没人用过,也不适合控件国际化,所以我去掉了;
    2、修改PageChanged事件处理程序,把其中的PageChangedEventArgs参数改为EventArgs,然后把方法中给AspNetPager的CurrentPageIndex赋值的代码删除,类似于
    aspnetpager1.CurrentPageIndex=e.NewPageIndex;这行代码删除就行了,其它不变。用vs2005或任何文本编辑器,比如editplus或ultraedit等的查找/替换功能一般项目一两分钟就改完了。谢谢!
      

  20.   

    谢谢 saveglobe(人上了三十怎么感觉一天天老了?) 和 zhangyunjian1(赚钱吧) 提出意见和建议,我测试一下你们说的问题再回复。你们的意思就是在设置UrlRewritePattern时没法设置除页索引参数外的其它参数的重写格式吗?谢谢!
      

  21.   

    webdiyer(陕北吴旗娃) ( ) 信誉:132    Blog  2006-12-28 09:35:30  得分: 0  
     
     
       谢谢 saveglobe(人上了三十怎么感觉一天天老了?) 和 zhangyunjian1(赚钱吧) 提出意见和建议,我测试一下你们说的问题再回复。你们的意思就是在设置UrlRewritePattern时没法设置除页索引参数外的其它参数的重写格式吗?谢谢!
      
     
    *************************************************************也没什么,因为在实际的使用中,使用url分页时,往往url传递的参数可能不止一个,可能有两个、三个或更多。
    因为没有细看你的新版本,只是感觉你在控件中使用string的匹配来解决url重写时的参数传递稍显笨拙一点(^:^),所以把我以前对AspNetPager的修改说出来供楼主参考。意见提得不好,请勿见笑 
      

  22.   

    楼主参见以下页面的url重写:
    http://www.valca.cn/product/c_223_2.aspx
    http://www.ohr.cn/posts/l_2240_0.aspx