随笔-91  评论-348  文章-1  trackbacks-2

ASTreeView 1.5.3发布(ASP.NET树控件)

ASTreeView 1.5.3发布啦,相比1.4.0,新版本改进了很多,还增加了几个很多朋友关心的功能。

下面我介绍下1.5.3中有哪些新东西:

1. 增加了新的节点类型:TextNode

使用TextNode, 开发者可以很灵活地使用html作为树节点的NodeText,这就意味着树节点可以是2个hyperlink,可以有多种颜色,甚至可以是javascript。

来个截图:

image

或者访问Demo看效果

2. 增加EnableDragDropOnIcon属性

当使用TextNode作为树节点时,节点的拖拽就成了问题,因为ASTreeView不知道树节点里的html会是什么。所以我增加了EnableDragDropOnIcon 属性,如果设置为true,那么最终用户可以拖拽树节点前的图标进行节点的移动。

截图:

image

访问Demo看效果

3. 支持自定义Javascript处理函数

这是新版本最大的亮点之一。想像如此情景:当开发人员想用ajax增加节点的时候,在服务端验证是否这个符合一定规范,如果不符合,返回特定字符,客户端取消增加节点的操作,在新版本中,可以这样实现:

(a) 设置EnableOnNodeAddedScriptReturn="true"
(b) 设置OnNodeAddedScript="addedHandler(elem)"
(c) 然后在addedHandler函数里这样写:

function addedHandler( elem ){
    var message = '';
    var result = true;
    
    var aTag = elem.getElementsByTagName('A')[0];
    
    if( aTag.getAttribute('addfailed') == 'true' ){
        alert( aTag.innerHTML );
        return false;
    }
    else{
        message = (">>add completed. [Node]" 
        + elem.getAttribute("treeNodeValue") + "<br />" );
    }

    document.getElementById("<%=divConsole.ClientID %>").innerHTML
     += message;
    return result;
    
}

在这个例子中,服务端返回addfailed的属性,加在节点的a标签上,addedHandler看到这个标签,返回false,告诉ASTreeView取消当前的新增节点操作。

同样的,在新版本中,也可以对编辑,删除,拖拽节点进行取消控制。

截图:

image

 

请访问在线Demo

 

4. 改进了astreeview.css

新版本对根节点和顶端节点的css进行了调整,更好地对齐了节点和树线。感谢richboylee!、

5. 改进了ASTreeView的ViewState管理

新版对ViewState进行了优化,介绍了往客户端发送的数据量

6. 对dll进行了强名称签名

7. 分别在Visual Studio 2005和Visual Studio 2008下编译了两个版本

一个版本for .net 2.0,引用Ajax Extension 1.0; 另一个版本for .net 3.5,引用Ajax Extension 3.5。

image

 

就写这么多,感兴趣的同学可以下载下来自己玩玩。

 

下载地址:

http://www.astreeview.com/astreeviewdemo/Download.aspx

 

谢谢大家一直以来的支持,截止到1.5.3,ASTreeView已经比较稳定了,有很多国内外朋友用在项目里反映都不错。如果您觉得这控件还可以,就麻烦您推荐下,谢谢!

posted on 2010-02-07 23:52 JIN Weijie 阅读(2670) 评论(32) 编辑 收藏

评论:
#1楼 2010-02-08 08:29 | 81      
支持。
请介绍下就。net自带的有什么优势。

 回复 引用 查看   
#2楼 2010-02-08 08:45 | 卡恩和巴拉克粉丝      
我把它看成了 DevExpress公司的 AspxTreeList控件了...
 回复 引用 查看   
#3楼[楼主] 2010-02-08 09:21 | Ryan Gene      
引用81:
支持。
请介绍下就。net自带的有什么优势。


你好,请参阅:http://www.cnblogs.com/jinweijie/archive/2009/08/27/astreeview_1_0_released.html

 回复 引用 查看   
#4楼 2010-02-08 09:26 | 吉日嘎拉>不仅权限设计      
你的树,的确很强大,国产软件的骄傲。 推荐+1

 回复 引用 查看   
#5楼[楼主] 2010-02-08 09:35 | Ryan Gene      
引用吉日嘎拉&gt;不仅权限设计:你的树,的确很强大,国产软件的骄傲。 推荐+1

谢谢支持:)

 回复 引用 查看   
#6楼 2010-02-08 09:35 | 天天      
这个树支持动态加载吗?
因为Treeview非常大,需要动态加载

 回复 引用 查看   
#7楼[楼主] 2010-02-08 09:36 | Ryan Gene      
引用天天:
这个树支持动态加载吗?
因为Treeview非常大,需要动态加载


支持,请访问demo: http://www.astreeview.com/astreeviewdemo/ASTreeViewDemo5.aspx

 回复 引用 查看   
#8楼 2010-02-08 11:20 | Tony Zhou      
haha
 回复 引用 查看   
#9楼 2010-02-08 11:25 | liyf      
好专业的树形控件。very good!
 回复 引用 查看   
#10楼 2010-02-08 12:02 | 颜昌钢      
以后就用这个树控件了。。。谢谢分享
 回复 引用 查看   
#11楼 2010-02-08 13:38 | 假正经哥哥      
还不错
 回复 引用 查看   
#12楼 2010-02-08 14:14 | 风雨者2      
控件更新的很快呀,楼主辛苦了!
 回复 引用 查看   
#13楼 2010-02-08 16:22 | oec2003      
支持
 回复 引用 查看   
#14楼 2010-02-23 09:58 | ymm[未注册用户]
我点捐助不成功。
 回复 引用   
#15楼[楼主] 2010-02-23 10:46 | Ryan Gene      
引用ymm:我点捐助不成功。

谢谢!

请直接访问这个地址:

http://www.jinweijie.com/paypal.html

 回复 引用 查看   
#16楼[楼主] 2010-02-23 12:48 | Ryan Gene      
引用ymm:我点捐助不成功。


现在修好了,谢谢!

中国贝宝一定要用form提交

 回复 引用 查看   
#17楼 2010-03-01 13:41 | 云中深海      
不错,关注!
 回复 引用 查看   
#18楼 2010-03-23 11:35 | luluxiu      
这个控件的确很强大
不过每一级节点的属性可惜只有string类型(如string nodeText, string nodeValue, string navigateUrl, string target, string tooltip, string nodeIcon, int virtualNodesCount, string virtualParentKey)。如果能够添加对象类型或者结构体就更好了~

 回复 引用 查看   
#19楼 2010-04-17 13:52 | 冰封的心      
问一下,如何保存移动节点后的数据呢?

 回复 引用 查看   
#20楼 2010-04-29 11:57 | 止戈      
每级最大节点只能35?
 回复 引用 查看   
#21楼[楼主] 2010-05-04 14:04 | Ryan Gene      
引用止戈:每级最大节点只能35?

不是啊,那只是示例

 回复 引用 查看   
#22楼 2010-05-14 10:14 | Rocky_      
为啥楼主的帮助文档用全英文写呀,另外绑定DataTable或IList支持嘛,没有找到示例呀。。。
 回复 引用 查看   
#23楼 2010-05-20 11:25 | 止戈      
@Ryan Gene
蒽。。谢谢~~
有没有点击一个节点关闭其他节点的属性?就是只能展开一个节点。

 回复 引用 查看   
#24楼[楼主] 2010-05-20 11:26 | Ryan Gene      
引用止戈:
@Ryan Gene
蒽。。谢谢~~
有没有点击一个节点关闭其他节点的属性?就是只能展开一个节点。

不好意思,没有

 回复 引用 查看   
#25楼 2010-05-21 14:34 | 止戈      
@Ryan Gene
你好,再问个,
在经典的三框架集里,树在左边,增加节点在右边框架,怎么做到增加节点后刷新树。。

 回复 引用 查看   
#26楼 2010-06-23 16:12 | 我不爱你      
大哥,我想用你的控件做一个加载目录的效果
当我点击+号展开时,触发一个事件,去加载这个节点下面的目录,你的控件可以吗?
对了,有没API 中文的

 回复 引用 查看   
#27楼[楼主] 2010-06-23 16:14 | JIN Weijie      
引用我不爱你:
大哥,我想用你的控件做一个加载目录的效果
当我点击+号展开时,触发一个事件,去加载这个节点下面的目录,你的控件可以吗?
对了,有没API 中文的


你看看这个是不是你想要的效果:
http://www.astreeview.com/astreeviewdemo/ASTreeViewDemo5.aspx

没有中文api,不好意思

 回复 引用 查看   
#28楼 2010-06-24 08:29 | 我不爱你      
@JIN Weijie
这个就是我想要的效果,那莫当点击+时,触发的事件是什么嘞? 有没这个页面的源码,谢谢发我邮箱,375403293@qq.com 真的很感谢

 回复 引用 查看   
#29楼[楼主] 2010-06-24 08:36 | JIN Weijie      
引用我不爱你:
@JIN Weijie
这个就是我想要的效果,那莫当点击+时,触发的事件是什么嘞? 有没这个页面的源码,谢谢发我邮箱,375403293@qq.com 真的很感谢


页面的源代码在下载的包里啊

 回复 引用 查看   
#30楼 2010-06-24 14:08 | 我不爱你      
@JIN Weijie
哥们,禁用鼠标右键属性是什么啊?

 回复 引用 查看   
#31楼 2010-06-24 15:57 | 我不爱你      
Bug!!!!
我用了你的控件,只要点击页面上其他控件,就报:"给定关键字不在字典中",,怎么解决啊!!!!

 回复 引用 查看   
#32楼 2010-08-13 17:14 | finesite      
请问 我增加了如下事件,但点击节点还是没有链接到指定页面,原因是? 谢谢

protected void astvMyTree_OnSelectedNodeChanged(object src, ASTreeViewNodeSelectedEventArgs e)
{
Response.Write(e.NodeText );

Response.Redirect("~/showCategory.aspx?categoryid="+descripter.NodeValueColumnName);
}

 回复 引用 查看