环境: Ajax .页面左是树. 右边是动态加载的控件.

解决方案:

树的 SelectedNodeChanged 在连续点两次之后, 会失去作用. 两种解决方法:
1.在 SelectedNodeChanged 事件中,把树添加一个不可见项,把该项设置成选中状态.  这样牺牲了 选中项 的样式.
2.在 Page_Load 中 BindTree() ; 因为是无刷新, 所以这个方法还算可以.

第一次加载控件的问题.        private void LoadControl()


在加载的时候, 就会遇到一个问题: 该控件是否是第一次加载. 明显的不能用 Page.IsPostBack 了. 在UserControl 里都 有一个IsPostBack属性.

第一次加载控件的问题.        public GridView TheGridView



调试发现: 在控件上还是好使.控件第一次加载 IsFirstLoad 是true,点击控件里的 Button 的话, IsFirstLoad 就变成 false 了.
但是在点击左边的树的时候, 该控件的 IsFirstLoad 还是false 导致无法绑定数据.

我们要在点击树的时候,手动的改变 IsFirstLoad ,就可以了.

第一次加载控件的问题.EditDocList con = (EditDocList)Page.LoadControl("EditDocList.ascx");
第一次加载控件的问题.
this.panControl.Controls.Add(con);
第一次加载控件的问题.con.IsFirstLoad 
= true ;
第一次加载控件的问题.

 

相关文章:

  • 2022-01-05
  • 2021-10-26
  • 2022-12-23
  • 2022-01-22
  • 2022-12-23
  • 2021-09-21
  • 2021-06-23
猜你喜欢
  • 2021-12-06
  • 2021-05-26
  • 2021-10-28
  • 2021-10-03
  • 2021-08-18
  • 2022-12-23
  • 2021-12-24
相关资源
相似解决方案