在页面上放一个隐藏文本框,将已选中的CheckBox所在行数据的ID用逗号连接后放起来。当页面加载时,如果ID包含在文本框中,则CheckBox被选中,反之不被选中。
另外,用ViewState["SelectedID"]保存也可以。

解决方案 »

  1.   

    如楼上的,在帮定事件里找到每一行里的CheckBox所对应的ID,如果存在于隐藏保存的ID字符串里就选择该CheckBox
      

  2.   

    倒,你gridview不是有一列是checkbox列吗?在分页的时候把你对应的值去下来设置到数据源上!这样你下次回来的时候再用数据源一帮定不就行了!
    你采用的是什么分页技术??
    是一次把所有数据都检索出来,然后根据筛选把对应满足条件的数据绑定到当前页面,然后分页的时候再去下一页满足条件的数据??
    我觉得这种方式分业很快!
      

  3.   

    选择好了,再点击下一页,选择取消了也正常变通一下,可以把已经选择的放在一个label里面显示以提示用户,真实的值存入ViewState
      

  4.   

    用ViewState 记住他  然后当点击回去的时候 在重新绑定
      

  5.   

    关键是保存数据吧 定义全局静态变量可以 session/viewState/cookie/Cache/Application/数据库/临时文件都可以 哪种熟练用哪种吧
      

  6.   

    <input type="hidden" runat="server" id="hdCheckID"/>
    我就是用这种方法实现的。在绑定gridview的时候给checkbox加个绑定事件,如果选中就增加一条,如果取消就删除一个(完全是字符串操作);然后在gridview_rowdatabound事件中处理选中的
      

  7.   

    放隐藏文本框的方式不推荐使用,为什么呢?并不是说这种方式不好,只是有局限性:当你的checkbox绑定的字段如果是整数型时,当出现类似1,11,12,112这种值时,如果按照逗号连接然后当你取消选择时怎么做?难道还继续使用replace掉选择的那个checkbox绑定的值?如果你取消的是1或者12呢,那我现在已经选择的隐藏文本框的值是1,11,12,112,这时会发生什么?!!当然要使用这个还是有办法解决的,无非就是加特殊符号如[1],[11]。所以不太推荐使用隐藏文本框的方式
      

  8.   

    回复20楼:(无须加什么特殊符号)
    取消选择时:string strSelected = TextBox.text
    string[] temp = strSelected.split(",")
    将要取消的CHECKbOX对应的ID的值从数组中移除即可
      

  9.   

    如果不用页面回传可以使用JS操作Cookie
      

  10.   

    是吗?如果ID为1,11,12,112时,我要移出ID为1和12的两项呢,你认为你这个直接replace没问题?!!!
    莫搞笑,想清楚了再回答。
      

  11.   

    session  cookie  之类的,或者调用类得属性