当我点击下一页或上一页时,我跟踪调试了一下,发现它总会去执行!IsPostBack的内容,导致其他Repeater的数据丢失了。它好像不像不其他的按钮事件一样,当点击按钮时,就不会重复执行!IsPostBack的内容。意思就是说它好像是访问新的一页一样,会去执行!IsPostBack里的代码。
解决方案 »
- 请教大虾,我用vs2008做了个聊天室,能不能在这个基础上改成一对一的随机聊天
- 为什么我的vs里面组合键无效
- JSP里有没有像.net里那样,有可用的html在线编辑器?
- 怎样让多行的textBox自动换行
- 什么是Msdn订阅者,如何成为MSDN订阅者呀?
- 怎样在*.ascx页面里,设置它父页面的<meta name="keywords">
- 关于二级联动DropDownList重置不成功的问题
- 安装了水晶报表10之后,却在自定义工具箱里找不到相关的控件 ?
- asp.net gridview控件
- 请教关于asp.net 2.0绑定membership数据源的问题
- 年假处理
- Response.Write javascript 中有空格和其它符号的正确输出问题
不可能是!IsPostBack造成的,一定是其他原因,你检查检查
{
if (Request.QueryString["page"] == null)
{
TrainerBind();
}
}
再去执行以下代码,
protected void AspNetPager1_PageChanged(object sender, EventArgs e)
{
try
{
if (Request.QueryString["page"] != null)
{
//pageindex = AspNetPager1.CurrentPageIndex;
pageindex = Int32.Parse(Request.QueryString["page"].ToString());
TrainerBind();
}
}
catch
{
Response.Write("<script>alert('参数错误!');window.location.href='../index.html';</script>");
return;
}
}
这样不就重复了吗?但我这里是加了Request.QueryString["page"] == null这句才不让它去执行TrainerBind();代码。如果不加则会执行。
{
if (Request.QueryString["page"] == null)
{
TrainerBind();
xxx();
yyy();
}
}
中的xxx();yyy();后,点击分页后就不用再重复执行它们了。只要执行一个重新绑定数据源的代码就OK呀。
本人在网上一直没有找到自己想要的分页控件,要么界面不理想,功能不全、要么支持的浏览器不好、要么代码臃肿、效率低下、bug极多的诸如aspNetPager等控件居然连css也封装起来不让改而且写得很繁琐,其实我只要其中的一个功能样式,其他的我都不需要,而且在使用过程中大家可能也会遇到我这样的问题第一次控件加载的时候,默认必须要执行他的其中一个方法,害得我不得不采用变通的方式绕过该bug,而且就是出现最新的版本7.02。当然我非常佩服控件的作者的技术水平,尊重他的劳动成果和共享精神。希望他做得更好。由于本人业余开发,时间仓促,使用中难免与个人的使用习惯及功能需求有不当的地方。欢迎指正。
功能特点:
一、支持网上流传的24种分页样式;
二、无限扩展自定义样式,灵活;
三、支持所有asp.net控件分页绑定;
四、分页效率高;
五、扩展方便、灵活性高;
六、支持所有浏览器,文档类型、兼容性高;
使用方法:
/* 24种分页样式复制粘贴开始(名称不要变,只要复制内容即可)*/
......pagerstyle.css里面的标记内容
/* 24种分页样式复制粘贴结束*/
24种分页样式见目录!
演示中数据控件是GridView、数据库使用的是Access(位置:App_Data/web.mdb),UcfarPager.dll组件暂时没有开源
大家在使用过程中有任何问题请与作者QQ: 18066799(Yekin-yu)联系,非常感谢您的反馈,让我们把他做得更好,更方便大家的使用。