彩票走势图

Telerik公司的RadControls控件学习笔记(四)

转帖|其它|编辑:郝浩|2011-04-21 14:09:25.000|阅读 1843 次

概述:今天我将和你分享另一个更加完美的技术控件(Telerik RadTreeview)控件.RadTreeview 是一个功能非常丰富的Asp.Net控件。它可以让具有层次结构的数据的显示,管理,导航变得轻而易举,该产品提供非常丰富的高级特性,如拖放,按需要加载(MSDN-style), 右键上下文菜单,组合框模式,自动sql绑定等特性。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

  朋友们、同行们通过前面《跟我学Telerik公司的RadControls控件》系列三篇的学习,你一定会内心有一种涌动,有种相见 (RadControls)恨晚的感觉。那就和晓军一起加入学习RadControls控件的行列,为IT的朋友提供更加明了化的技术大餐,欢迎……

  今天我将和你分享另一个更加完美的技术控件(Telerik RadTreeview)控件.RadTreeview 是一个功能非常丰富的Asp.Net控件。它可以让具有层次结构的数据的显示,管理,导航变得轻而易举,该产品提供非常丰富的高级特性,如拖放,按需要加载(MSDN-style), 右键上下文菜单,组合框模式,自动sql绑定等特性。

概要:

  • 按需加载巨型结构
    如果您的treeview有大量的节点,您可以仅加载显示的那一部分,在用户需要的时候再加载其需要的部分,就如同MSDN中的菜单一样
  • 拖放功能
    该特性让您可以重新对r.a.d.treeview的结构进行布局. 并能自动触发相应的服务器端事件
  • 多节点同时选择 (Ctrl + select)
    您可以同时选择多个节点,在进行服务器端时间提交时,所选定的所有节点信息会自动提交到服务器端
  • Tree-view ComboBox模式
    这是r.a.d.treeview的一大特点,可以自行treeview combobox, 类似于r.a.d.editor自定义链接的drop-down的效果。
  • 完全支持图片和CSS
    你可以非常容易地设置控件的外观,加入图片和css。你可以控制每一个节点的样式和状态
  • 从ADO.NET Dataset自动进行 sql 绑定
  • 跨帧支持Cross-frame support
  • 支持Check-box
    r.a.d.treeview 让你可以添加checkbox到每一个节点. 也可以非常容易地调整它们的样式,在运行的时候,你可以使用专用程序借口获得选定的集合。
  • 动态add/delete/disable节点的接口
  • 在单页上可以添加多个实例
  • 能够控制节点的展开和收拢
  • 在提交页面后,保存滚动条的位置
  • 在显示的内容比较多的时候,该功能可以让treeview在提交数据之后仍然可以显示上次的节点位置。

  实例分析

  1、实例图

    

          :看上图当子节点部分选中时,本节点出现虚空状态,使用人员一眼就可以看到,那个节点下面是部分选中,呵呵,够人性化了吧。页面也

   很美观,给人以视觉冲击。 

   2、在html代码中加入

    <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>

          或<telerik:RadScriptManager ID="RadScriptManager1" runat="server">&lt;/telerik:RadScriptManager>

  3、 拖拽控件RadTreeView控件到html页面

    <telerik:RadTreeView runat="server" ID="rtvMenu" CheckBoxes="true" CheckChildNodes="true"
                        TriStateCheckBoxes="true">
            </telerik:RadTreeView>

  4、后台代码

    递归绑定控件数据,在这里就不多叙述了……

  注意:本控件不仅有以上功能,可以可以方便实现动态加载,如图:

  

  当点击节点时,才动态加载其子节点,如上图红框效果。

  代码:

     <telerik:RadTreeView ID="RadTreeView1" runat=&quot;server" Height="300px" Width="100%"             OnNodeExpand="RadTreeView1_NodeExpand" />

     事件:

     protected void RadTreeView1_NodeExpand(object sender, RadTreeNodeEventArgs e)
     {
         PopulateNodeOnDemand(e, TreeNodeExpandMode.ServerSideCallBack);
     }

 private static void PopulateNodeOnDemand(RadTreeNodeEventArgs e, TreeNodeExpandMode expandMode)
     {
         DataTable data = GetChildNodes(e.Node.Value);

         foreach (DataRow row in data.Rows)
         {
             RadTreeNode node = new RadTreeNode();
             node.Text = row["Title"].ToString();
             node.Value = row["CategoryId"].ToString();
             if (Convert.ToInt32(row["ChildrenCount"]) > 0)
             {
                 node.ExpandMode = expandMode;
             }
             e.Node.Nodes.Add(node);
         }

         e.Node.Expanded = true;
     }

  好了,以上就是我目前使用到的RadTreeview 控件的常用技术点,详细的还需要在使用的过程中慢慢揣摩,也真诚的希望各位朋友和我共同学习、探讨微软相关控件的真正使用精髓。


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn

文章转载自:博客园

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP