继上次1.1.1版本发布后,又陆续地更新了几次,但为了避免频繁发布造成大家厌烦,所以累积到今天一起发布,希望对有需要用树的朋友有所帮助,谢谢大家的时间!
从1.1.1到1.3.0,有以下的改进:
1.右键菜单扩展
在新版本中,支持增加菜单项,如图所示:
增加自定义菜单非常简单:
/// <summary> /// initial controls, bind you events etc. here /// </summary> private void InitializeComponent() { this.astvMyTree.ContextMenu.MenuItems.Add( new ASContextMenuItem( "Custom Menu 1", "alert('current value:' + " + this.astvMyTree.ContextMenuClientID + ".getSelectedItem().parentNode.getAttribute('treeNodeValue')" + ");return false;", "otherevent" ) ); this.astvMyTree.ContextMenu.MenuItems.Add( new ASContextMenuItem( "Custom Menu 2", "alert('current text:' + " + this.astvMyTree.ContextMenuClientID + ".getSelectedItem().innerHTML" + ");return false;", "otherevent" ) ); }
在线演示:http://www.astreeview.com/astreeviewdemo/ASTreeViewDemo3.aspx
2.主题支持
新版本支持主题,现在内置有3中主题,开发者也很容易开发自己的主题,如图所示:
在线演示:http://www.astreeview.com/astreeviewdemo/ASTreeViewDemo10.aspx
3.左到右(ltf)显示支持
在显示阿拉伯语这类从左到右的语言的时候,树的显示也需要从左往右,新版本ASTreeView支持从左往右显示,如图所示:
4.点击父节点展开/收缩节点
新版本中,最终用户可以点击父节点展开和收缩节点,这在当只有子节点可以点击的时候比较有用。设置EnableParentNodeExpand=true开启该功能。
如图所示:
5.节点支持html
新版本的ASTreeView支持html作为节点的字符,如图所示:
6.支持转义字符
修改节点时,支持转义html,属性为EnableEscapeInput,如图所示:
7.支持多行编辑
新版本支持多行编辑,只需将EnableMultiLineEdit设置为true开启该功能,效果:
8.支持拖拽事件
很多朋友需要的拖拽事件现在终于来啦!效果图:
使用:
先写一javascript函数:
<script type="text/javascript"> //parameter must be "elem" function dndHandler( elem ){ document.getElementById( "<%=divConsole.ClientID %>" ).innerHTML += ( ">>node dragged:" + elem.getAttribute("treeNodeValue") + "<br />" ); } </script>
然后设置:OnNodeDragAndDropCompleteScript="dndHandler( elem )"
在线演示:http://www.astreeview.com/astreeviewdemo/astreeviewdemo1.aspx
9.禁止子节点属性
ASTreeViewNode新增EnableChildren属性,如果设置为false,那么最终用户将不能拖拽其他节点作为该节点的子节点。