最开始用这个控件的时候不知道只需要在PageChanged里绑定数据就可以了,不需要在Page_Load里绑定数据。
结果调试后是绑定了两次,后来把Page_Load里的绑定去掉了。只绑定一次,完全正常,没有任何问题。
但是现在突然又出了个问题,PageChanged执行后绑定完数据第一页,正常。点击其他页,再执行PageChanged事件时CurrentPageIndex还是为1,数据就始终只显示第一页了,后来尝试把绑定的方法执行两次。很奇怪又正常了。
在执行第一次时CurrentPageIndex是为1的,执行第二次时CurrentPageIndex就正常了,就是说在执行第一次绑定方法时CurrentPageIndex被重置了,连续第二次执行又取到了,很困惑,大家有遇到过的说说吧,谢谢。
我是用URL分页的,存储过程没有问题。
结果调试后是绑定了两次,后来把Page_Load里的绑定去掉了。只绑定一次,完全正常,没有任何问题。
但是现在突然又出了个问题,PageChanged执行后绑定完数据第一页,正常。点击其他页,再执行PageChanged事件时CurrentPageIndex还是为1,数据就始终只显示第一页了,后来尝试把绑定的方法执行两次。很奇怪又正常了。
在执行第一次时CurrentPageIndex是为1的,执行第二次时CurrentPageIndex就正常了,就是说在执行第一次绑定方法时CurrentPageIndex被重置了,连续第二次执行又取到了,很困惑,大家有遇到过的说说吧,谢谢。
我是用URL分页的,存储过程没有问题。
解决方案 »
- 关于Dtree,求详细解释,就剩下20分了
- 今天发现一个网站的js文件下载不了,IE临时文件中也没有,用的啥技术?
- bs系统并发控制问题
- VS 2005 中左侧工具箱里没有Sqlconnection,sqlDataAdapter到"选择工具箱"里勾选了相应的项,仍然不无法显示?
- 谁给帮看看,回答的好的给高分
- .net读取大小分类的问题
- 用gridview显示物资,用户勾选后,保存id在一个session里,然后用另一个gridview或table显示,怎么实现啊?
- 发布时JBOSS与IIS的问题
- datagrid里的dropdownlist
- 怎么样可以使,我上传上去的文件,在用户调用的时候辨别类型?
- DetailsView数据绑定问题
- asp.net页面中如何嵌入.flv及.swf文件的播放器
if (!IsPostBack)
{
方法()
}
我的Page_Load里没有任何代码。唯一的数据绑定就写在PageChanged事件中了(因为Page_Load再写一遍就会执行两次)。
大驾光临啊,不胜感激。转入正题,我是用URL分页的。如果在page_load和pageChanged事件都绑定,数据就是正常的。
如果只在pageChanged里绑定的话,CurrentPageIndex会一直会1(页面上只要执行两次绑定方法,就是正常的。否则进入pageChanged后CurrentPageIndex就成1了。)
现在我临时性把用aspnetpager1.CurrentPageIndex获取当前页索引的代码改成Convert.ToInt32(Request.QueryString[AspNetPager1.UrlPageIndexName]),是正常的。
搜索了半天了,还是没搞出个所以然来
int p;// = AspNetPager1.CurrentPageIndex;
if (Request.QueryString["p"] == null)
{
p = 1;
}
else
{
p =Convert.ToInt32( Request.QueryString["p"]);
AspNetPager1.CurrentPageIndex = p;//一直都是1,所以用这种法子给它改
}
Url分页时只需要在PageChanged事件处理程序中绑定数据,不需要也不能在Page_Load中绑定,这样的话就导致绑定两次。
aspnetPager 的作者是 webdiyer(陕北吴旗娃) ????
??????????????????????????
{
DataSet ds;
SqlDataAdapter dr;
SqlCommand com;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//string strconn = System.Configuration.ConfigurationManager.ConnectionStrings["SperConnectionString1"].ToString();
string strconn = "Data Source=(local);Database=INFO;Uid=sa;Pwd=5354";//连接数据库
SqlConnection con = new SqlConnection(strconn);
con.Open();
com = new SqlCommand();
com.Connection = con;
com.CommandText = "select count(*) from zhong";//查询表
AspNetPager1.AlwaysShow = true;
//AspNetPager1.PageSize = 5;
AspNetPager1.RecordCount = (int)com.ExecuteScalar();
con.Close();
RepeaterDataBind();
}
} private void RepeaterDataBind()
{
//string strconn = System.Configuration.ConfigurationManager.ConnectionStrings["SperConnectionString1"].ToString();
string strconn = "Data Source=(local);Database=INFO;Uid=sa;Pwd=5354";//连接数据库
dr = new SqlDataAdapter("select * from zhong", strconn);
ds = new DataSet();
dr.Fill(ds, AspNetPager1.PageSize * (AspNetPager1.CurrentPageIndex - 1), AspNetPager1.PageSize, "zhong");
this.GridView1.DataSource = ds.Tables["zhong"];
this.GridView1.DataBind(); AspNetPager1.CustomInfoHTML = " 总页数:<b>" + AspNetPager1.PageCount.ToString() + "</b>";
AspNetPager1.CustomInfoHTML += " 当前页:<font color=\"red\"><b>" + AspNetPager1.CurrentPageIndex.ToString() + "</b></font>";
} protected void AspNetPager1_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e)
{
AspNetPager1.CurrentPageIndex = e.NewPageIndex;
RepeaterDataBind();
}
但是跳转后URL里的page参数值获取不到。总是1,如果在PageChanging里调用两次绑定方法的话,第二次绑定时获取是正确的。
{
bandingData((string)ViewState[statusSql]);
}多绑定了一次才运行成功的,要不然始终为1,怎么点都不翻页
同样我看别人的代码里就像作者说的那样 PageChanged 绑定一次就能翻页
同样也是 UrlPaging="True"
有人知道这是为什么吗
我也是类似的问题、举个例子:
我从a.aspx?page=3 中的某个<a href="b.aspx?id=xx"></a>跳转到另一个页面、然后在b.aspx?id=xx这个页面想要添加一个“返回文章列表”这样的超链接、要怎么样才能跳转回a.aspx?page=3啊(按浏览器的"后退"按钮可以返回)?因为好像不能直接把“%CurrentPageIndex%”写到href里面,取不到page=3这个参数值、、也不能写死 因为文章动态更新的
紧急求教、、、、老大你快出来啊
if(!IsPostBack)
{
AspNetPager1.RecordCount=数据库中提取的记录总数
}
我的是这样改的,现在正常