日期:2014-05-19  浏览次数:20398 次

紧急求救:怎么解除GridView的数据源绑定
1、在.aspx页面里添加了一个GridView控件,不指定任何数据源给它。
2、在本.aspx页面的Search按钮的OnClick事件中,根据一定条件把GridView绑定到不同的数据源上。即:
在页面“第一次打开”的时候,GridView是不会显示的。
3、在点击几次Search按钮后,点击Reset按钮时,要实现的效果是:
在不通过Redirect方法的情况下(因为Redirect会导致页面闪烁刷新),页面回到“第一次打开”时的状态,没有GridView显示。

主要解决思路:
在点击Reset按钮页面Postback的时候,在Page_Load的if(IsPostBack)部分,专门针对Reset引发的Postback做一些操作来实现“第一次打开页面”的状态。
问题:
实现过程中,找不到实现“GridView解除数据源绑定”的方法;无法使GridView的状态回复到Search按钮点击之前没有数据源绑定的状态。

目前尝试过的方法:
1)把GridView.EnableViewState设为false;   导致其他控件的功能出错。
2)设GridView.DataSource=null,不报错但没有作用。

总结:
“必须找到实现GridView解除数据源绑定的方法”。不过我找了好久,都找不到相应的解决方法。

请高手帮忙,谢谢:)


------解决方案--------------------
试一试用脚本代码实现
onclick= 'javascript:top.location.href= "index.aspx?i= <%=pagesize%> &j= <%=param%> " ';
其中,pagesize,param是自定义的两个变量,用来存储页面跳转的参数的,每跳转到一个页面都设置一下这两个变量的值
------解决方案--------------------
按钮事件中,指定了数据源空后,一样要绑定才会生效!

protected void Button2_Click(object sender, EventArgs e)
{
GridView2.DataSource = null;
GridView2.DataBind();
}
------解决方案--------------------
up