留言簿

我要留言
留言搜索

2010-05-19 15:31  阿忆

using System.Data.OleDb;
using Wuqi.Webdiyer;

public partial class Admin_Default: System.Web.UI.Page
{
    protected OleDbConnection Conn = DBHlepr.CreateDB();
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            string sql = "select count(*) from Products";
            OleDbCommand Cmd = new OleDbCommand(sql, Conn);
            Conn.Open();
            this.pager1.RecordCount = (int)Cmd.ExecuteScalar();
            Conn.Close();
            BindData();
        }
    }
    //数据绑定
    protected void BindData()
    {
        OleDbDataAdapter sda = new OleDbDataAdapter("select * from Products", Conn);
        DataSet ds = new DataSet();
        sda.Fill(ds, pager1.PageSize * (pager1.CurrentPageIndex - 1), pager1.PageSize, "ProductsName");
        DataList1.DataSource = ds.Tables["ProductsName"].DefaultView;
        DataList1.DataBind();
    }
    protected void pager1_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e)
    {
        this.pager1.CurrentPageIndex = e.NewPageIndex;
        BindData();
    }
}
不管怎么样都显示第一页。请问下这个要怎么解决。还有救是Wuqi.Webdiyer.PageChangingEventArgs 请问下这个是分页的那个么,我看了很多关于这个的问题。都没办法解决
回复:您好,您说的不管怎样都显示第一页是一共只有一页呢还是点击其它页索引仍然显示第一页而没有跳转?上面的代码看起来没什么问题,是否是您禁用了ViewState造成的?PageChaningEventArgs是AspNetPager中一个为事件传递参数的类,如果您不需要取消分页事件,那么应该用PageChanged事件而不是PageChanging事件,在PageChanged事件处理程序中只需要重新绑定数据即可,无需设置CurrentPageIndex。

2010-05-19 15:14  夏楚枫

你好 你做的那个ASPnetpager控件 好像有个bug  
例:
       <webdiyer:AspNetPager ID="AspNetPager1" runat="server" Width="600px" PageSize="5" ShowCustomInfoSection="Left" CustomInfoHTML="[第%CurrentPageIndex%页]  [共%PageCount%页]  [%PageSize%条记录/每页]"
            BackColor="#CC66FF" BorderColor="#33CC33" FirstPageText="首页" LastPageText="末页"  
            NextPageText="下一页" onpagechanged="AspNetPager1_PageChanged" 
            PrevPageText="上一页"  >
        </webdiyer:AspNetPager>

这里面的CustomInfoHTML 属性中 每页多少条记录([%PageSize%条记录/每页]"
)  我设置的每页显示5条记录 但是最后一页只有两条记录 但是还是显示的是 ‘5条记录每页’
回复:您好,不是bug,本来就这样呀,最后一页没有五条数据了,所以只显示最后剩下的几条,其实这个功能和AspNetPager无关,您完全可以自己实现让每个页面都显示五条数据,示例项目中url逆向分页的例子就是。

2010-05-19 12:19  tiger45

我觉得应该写一个说明使用文档,方便初学者使用。

说明控件如何调用等说明
回复:现在就有详细的说明和示例,不知道您还要哪方面的说明?

2010-05-19 09:52  *^*

一直以来,都在使用您开发的控件,感激之情无以言表。近来转战MVC2,当使用MvcPager的自定义路由表分页方法时碰到一个问题。
MapRoute的定义中无法使用带有?的规则,折腾了好久都无法实现类似 http://www.abc.com/index.aspx?pageID=3 的效果。
还请前辈指点一二,万分感谢。
回复:我晕,那个不要什么路由规则啊!直接用就是了,如果想用MvcPager实现这样的url那就更简单,只需要传递分页数据(PagedList),将PagerOptions中的PageIndexParameterName设为pageID即可,类似于这样:<%:Html.Pager(Model,new PagerOptions{PageIndexParameterName="pageID"})%>。我在一些内部网的项目中都这么用的,懒得配置路由了。

2010-05-17 18:58  十七郎

首先,谢谢前辈为我们提供了这么好的源码,但我使用过程中遇到了一个问题。自己解决不了,特前来请教,请在闲暇之余帮忙处理一下。问题如下:1、System.Web.Mvc.ViewUserControl<PagedList<Orders>> 其中的 Orders是个泛型类吗? 2、我的数据是从webservices上取来的List<T>,请问我该如何做?将 PagedList<Order> orders = db.Orders.ToPagedList(id ?? 1, 20);这句改成PagedList<ItemInfo> orders =new PagedList<ItemInfo>(LIst<ItemInfo>,1,20); 结果提示在new的时候类型不匹配。 请帮我看看该如何处理????可以的话,我的QQ: 12036581 希望在线请教。
回复:您好,Order是自定义的实体类,ViewUserControl和PagedList才是泛型类。PagedList构造函数的第一个参数是IList实例,而不是一个IList类型,应该是这样:
List myinfo=//从web service获取并赋值;
PagedList orders=new PagedList(myinfo,1,20);

2010-05-15 17:56  xj

请教一个关于mvcpager的问题。是这样的,您提供的例子中没有一个有查询页面的,如果页面上有查询功能,在这种情况下如何结合你的控件进行jqeury分页查询呢?还有就是,如果我设置为jqeury分页,产生的代码有一个缺陷,就是每个链接都会有一个onclick事件,这些事件的代码全是内联的,重复太多,我知道这是为了封装,但我想可以将重新考虑一下这样的设计。
回复:您好,查询和普通asp.net webform没有什么不同,一般用get方法提交查询表单将参数直接加到url之后。您说的第二个问题,确实是这样,连微软的官方的Ajax代码也是这样的,内联的方式好处就是无需用户再做任何设置,不会象外联文件,常常会因忘记连接而出错,其实上,MvcPager使用jQuery进行Ajax分页时,内联的脚本已经是非常少的了,而且这些动态生成的客户端脚本会因AjaxOptions参数的不同而不同,所以做成外联的函数或者放入外联的文件中有些不太好控制。谢谢!

2010-05-15 09:58  M`

向您学习! 致敬!
回复:谢谢支持!共同进步!

2010-05-15 05:12  我遇到问题了,请大侠指点

在数据库 'master' 中拒绝了 CREATE DATABASE 权限
尝试为文件 F:\AspNetPager\App_Data\NorthWnd.mdf 附加自动命名的数据库,但失败。已存在同名的数据库,或指定的文件无法打开或位于 UNC 共享目录中。 
回复:已存在同名的Northwnd数据库,请将原来的数据库改一下名,比如Northwnd2。

2010-05-14 15:08  xfeater

请问下,如果我用Url分页方式,当我传多个参数时,如:?id=1&name=5,这时在用你的翻页。每次翻页时会保留住我的参数吗
回复:是的,只要这些参数在分页前存在,分页后都会原样保留。

2010-05-13 14:22  Micro

你好,刚了解学习使用AspNetPager控件 
向这样一个URL  
index.aspx?typeid =类别&pange=页数
应该怎样配置
回复:您要配置什么?只要分页前参数在url中存在,那么分页后这些参数都会保留,至于分页参数,默认名为page,除非您想修改分页参数的默认名称,否则不用做任何设置,若需了解更多信息,请查看帮助文档:http://www.webdiyer.com/AspNetPagerDocs/index.html。谢谢!
;