主页面的page_load执行完后执行A的Page_load(如果A注册先于B),再执行B的Page_load没看明白你的意图

解决方案 »

  1.   

    你在控件B的Button的OnClick事件中每次都邦定CheckBoxList的数据了吗?我想这问题就需要每次邦定,因为你动态加载控件B后A就变化了,所以得重新DataBind一次,还有对控件B也是一样,如果你要显示的CheckBoxList的内容是一样的,可以暂时把它设为不可见,然后在B的Button的OnClick事件中使它可见;如果你要显示的CheckBoxList的内容不一样,就需要在B的Button的OnClick事件中邦定CheckBoxList的数据
      

  2.   

    在控件B的Page_Load中
    if(!this.IsPostBack)
    {
        DataListA.DataBind();
    }
    刚才没看清,这一点有点奇怪,DataListA.DataBind()应该写在控件A的Page_Load里,你不是说A是B的容器吗?
      

  3.   

    sorry!在控件B的Page_Load中
    if(!this.IsPostBack)
    {
        CheckBoxList.DataBind();
    }且CheckBoxList的数据源是人为随机排序的,如果我重新DataBind,那么取得数据的时候就已经不是原来选定的那一项了