跟我学Telerik公司的RadControls控件(四)

跟我学Telerik公司的RadControls控件(四)
朋友们、同行们通过前面《跟我学Telerik公司的RadControls控件》系列三篇的学习,你一定会内心有一种涌动,有种相见(RadControls)恨晚的感觉。那就一起加入学习RadControls控件的行列,为IT的朋友提供更加明了化的技术大餐,欢迎……
  今天我将和你分享另一个更加完美的技术控件(TelerikRadTreeview)控件:  RadTreeview 是一个功能非常丰富的Asp.Net控件。它可以让具有层次结构的数据的显示,管理,导航变得轻而易举,该产品提供

大家好,又见面了,我是你们的朋友全栈君。

朋友们、同行们通过前面《跟我学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、实例图

    跟我学Telerik公司的RadControls控件(四)

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

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

       2、在html代码中加入

    <asp:ScriptManager ID=”ScriptManager1″ runat=”server”></asp:ScriptManager>

          或<telerik:RadScriptManager ID=”RadScriptManager1″ runat=”server”></telerik:RadScriptManager>

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

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

  4、后台代码

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

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

  跟我学Telerik公司的RadControls控件(四)

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

  代码:

     <telerik:RadTreeView ID=”RadTreeView1″ runat=”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 控件的常用技术点,详细的还需要在使用的过程中慢慢揣摩,也真诚的希望各位朋友和我

共同学习、探讨微软相关控件的真正使用精髓。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/161971.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号