代码:这是AspNetPager1_PageChanging事件
protected void AspNetPager1_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e)
{
AspNetPager1.CurrentPageIndex = e.NewPageIndex-1;
string tag = Request.QueryString["tag"];
string type = Request.QueryString["type"];
string oid = Request.Cookies["userinfo"]["deptid"];
if (tb_size.Text != "")
{
pagesize = Convert.ToInt32(tb_size.Text);//这里是根据textbox输入的值来改变pagesize
}
随访提醒DB db = new 随访提醒DB();
List<随访提醒> list = db.Select(oid, tag, type, pagesize, AspNetPager1.CurrentPageIndex - 1, cancel);
AspNetPager1.RecordCount = db.SelectCount(oid, tag, type, cancel);
GridView1.DataSource = list;
GridView1.DataBind();
}
控件的pagecount不是由控件自动计算吗???可是我改变了pagesize后总页数还是显示以前的?
一般不会有这种需求吧
我解释下 如果是我写这个控件 我会认为 pagesize 在第一次创建后就是固定的 不会再改变了
为了提高效率 完全可以省去这种计算操作 及pagesize只在第一次进来的时候有效
@小眼睛老鼠: 可是现在是有这种需求啊!问题是我更改了pagesize之后点击下一页的时候页面重新刷新了,然后textbox里就没有我刚才输入的数据了,pagesize还是初始化的时候的值!
@lijunmomo: 你看看你是不是在pageload里面重新设置的pagesize?
@小眼睛老鼠: 我把pagesize保存到session了,但是控件刚开始显示的当前页面不准了
重新赋值下PageSize属性。