lhp3082004

博客园 首页 新随笔 联系 订阅 管理
      我不知道微软是处于何种原因,把Mobile上的Treeview控件设计的有这么个Bug,我使用的开发环境是VS2008。大家都知道TreeView控件在winFrom和Mobile中都有Nodes.Clear()方法,但是在Mobile中的缺陷却很大。
      我先把问题提出来:即在Mobile中TreeView的Nodes.Clear()与AfterSelect事件有着密切的联动关系。
      在winform中,若注册了TreeView的AfterSelect事件,我们在使用TeeView的Nodes.Clear()方法时,不会触发AfterSelect事件。但是在Mobile中,事情就没有这么简单了。你在使用TeeView的Nodes.Clear()方法时,会连续触发AfterSelect事件。触发的次数和你当前TreeView的SelectedNode的位置以及TreeView中的结点的个数有关。
      解决方法是:自己定义一个bool类型的开关来控制事件的触发。
posted on 2009-08-25 23:56  天地海鸥  阅读(767)  评论(0编辑  收藏  举报