在使用TreeView控件的时候,如果数据量太大,这个TreeView控件加载会很慢,有时甚至加载失败,
为了更好的使用TreeView控件加载大量的数据,采用异步延迟加载TreeView。
在TreeView每个结点的前面都有个"+"号,点击这个”+“号触发的事件是OnTreeNodeExpanded="TreeView1_TreeNodeExpanded" ,在刚开始加载TreeView的时候,如果结点下面
还有子节点的话,只加载一个子节点;在点击”+“号,触发OnTreeNodeExpanded事件的时候,再加载该结点下的
所有子节点,这样速度就很快了。
1、前台的显示TreeView代码如下:
注明:可以通过selectNode控制选择结点的背景颜色。
2、后台的TreeNodeExpanded事件代码如下:
注明:其中的PopulateTreeViewFromFloorName、PopulateTreeViewFromUnit、
PopulateTreeViewFromRoomUserTree的第四个参数”1“是TreeView1_TreeNodeExpanded事件触发
的标志位,根据这个标志位延迟加载。
通过这样的思路就可以实现异步延迟加载的效果。