IMZRH的日志

努力成为一个有用的人

导航

  最近做的一个项目中用到一个部门树,其结点非常多,估计最后会有接近1W的结点,这时如果用Asp.Net2.0自带的TreeView控件是很不好的,页面加载会很慢,所以想到了找一个能异步绑定的树。经过实验,终于利用梅花雪控件树完成了功能。

  梅花雪控件树本身的数据表结构和我的不一样,我的表结构中ID和Parent_ID都是用的GUID,而梅花雪控件树要求结点的ID必须是int型的,这就涉及到一个ID的转换,我的思路是这样的,在生成树结点的时候,利用新定义的一个nodexIndex字段的值,而把组织ID绑定到一个用不到的属性上,比如hint属性。这样即能生成结点,又可以保证客户端可以组织的ID。具体实现代码如下:

 

Code

   最后说一个需要注意的事,在应用梅花雪控件树的时候,一定要注意js文件的编码问题,我今天就碰到了这个问题,从网上down下来的js文件是gb2312格式的,这时我在绑定树的时候,第二层结点展开时,不是展开在第一层结点的下面,而是直接和第一层结点平行的,很奇怪的问题吧?浪费了我三个小时的时间也没有调试好,最后在快要放弃的时候,忽然想到有可能是js文件编码的问题,果然,将编码格式改为utf-8后,问题迎刃而解。@_@