微软的TreeView控件的客户端操作

原创 2004年08月06日 13:11:00

微软的TreeView控件,呈现到客户端后是html 组件 treeview.htc 在web 根目录的webctrl_client文件夹下,如果,所以安装完微软的IEWebControls后必须确认自己的web根目录下的webctrl_client得htc和资源文件是否完整。
TreeView 空件的命名空间是Microsoft.Web.UI.WebControls,在客户端的输出是treeview.htc。既然是组件,那就有,属性,方法,事件等,我们完全可以在客户端对treeview 操作,减少一些与服务端无谓的交互。

1.取某节点得index

function getNodeIndex(node){
 var strIndex = "";
 if (node != null){ 
     if (node.getAttribute("sibIndex") == null){
        if (node.parentElement == null){ 
               return null; 
        } 
     var col = node.parentElement.children.tags("treenode"); 
     var i = 0; 
     while (col[i] != node) i++; 
          node.setAttribute("sibIndex",i); 
 } 
 strIndex = node.getAttribute("sibIndex"); 
 while (node.getAttribute("parentElement") && node.getAttribute("parentElement").tagName.toLowerCase() == "treenode") { 
     node = node.getAttribute("parentElement");
if (node.getAttribute("sibIndex") == null) 
     return null;
strIndex = node.getAttribute("sibIndex") + "." + strIndex;
}
}
return strIndex;
}
2.取节点id是某各值的节点index
function  getNodeIndexbyId(tTree,strId)
   {
    var objColl=tTree.getChildren();
    for (var i=0;i<objColl.length;i++)
    {
     
if (objColl[i].getAttribute("ID").toString()==strId)
     {
      
      return getNodeIndex(objColl[i]);
      
     }
     else
     {
      var strTemp=getNodeIndexbyId(objColl[i],strId);
      
      if (strTemp!="")
      {
       return strTemp;
      }
     }
    }
    return "";
    
   }
3.展开树上的所有节点
function DoExpand(tTree)
   {
    var objColl=tTree.getChildren();
    for (var i=0;i<objColl.length;i++){
     objColl[i].setAttribute("Expanded",true);
     DoExpand(objColl[i]);
    }
   }
4.判断树上是否含有text是某个指定值的节点
function DoTest(tNode){
    var objColl=tNode.getChildren();
    for (var i=0;i<oColl.length;i++){
     if (objColl[i].getAttribute("text")=="xam"){
         return true; 
     }
     else{
       if(DoTest(objColl[i])==true)
       {
        return true;
       }
     }
    }
   }






C#TreeView控件与XML相关操作

在C#的应用开发中,TreeView控件是一种比较常用的控件,主要反映了父子节点之间的关系,由于TreeView控件与XML文件的组织结构比较类似,可以把TreeView控件与XML文件结合使用。Tr...
  • pengshupan
  • pengshupan
  • 2016年02月29日 15:44
  • 2279

[C#]TreeView操作汇总

用到树,自然而然要想到递归 下面的例子是带CheckBox的TreeView,根据Datasource中的isvisible字段来确定是否勾选 加载,构造树形结构: priv...
  • edcvf3
  • edcvf3
  • 2016年12月05日 11:58
  • 1037

C# Treeview控件绘制

using System; using System.Drawing; using System.Windows.Forms; using Windows.Resource; namespace ...
  • zuoyefeng1990
  • zuoyefeng1990
  • 2017年04月05日 09:49
  • 792

WPF中TreeView的使用

WPF中对树控件的使用主要有两种方法, 方法一,对TreeView进行静态搭建,对应的XAML文件代码如下: ...
  • lzhui1987
  • lzhui1987
  • 2016年05月11日 23:08
  • 7448

PB中TreeView控件使用技巧

PB中TreeView控件使用技巧 2007-01-28 00:09:20 分类: 数据库开发技术 PowerBuilder中的TreeView 控件为树状游览,类似于WIND...
  • tlammon
  • tlammon
  • 2016年03月01日 20:40
  • 1882

读取XML文件动态绑定TreeView控件练习题

题目三:读取XML文件动态绑定TreeView控件 一、语言和环境 A、实现语言  C# B、环境要求  Visual Studio 2012 二、功能要求 现使用....
  • baidu_36074048
  • baidu_36074048
  • 2017年03月12日 16:18
  • 882

QML树控件TreeView的使用(上)

在Qt5.5之前是没有树控件的,我们在使用时用的是ListView来构造出一个树,Qt5.5之后的QML开发阶段,有了树控件TreeView,本篇着重记录QML的TreeView的使用。根据MVC分解...
  • Shado_walker
  • Shado_walker
  • 2017年02月22日 19:39
  • 2270

delphi中Treeview的使用介绍

今天重点学习了TreeView的使用方法,基本的已经写了,现在主要想说的是如何显示数据库的资料,今天只是做了个较简单的例子,一个父节点下显示数据库中某个field的值。代码如下:    proc...
  • chinajobs
  • chinajobs
  • 2016年05月18日 11:06
  • 1181

Windows应用程序高级控件之TreeView

TreeView控件--树控件 为用户显示节点层次结构,每个节点又可以包含子节点。 添加和删除树节点 添加--TreeView的Nodes属性的Add方法:public virt...
  • u010792238
  • u010792238
  • 2014年06月08日 19:54
  • 926

PB控件属性之TreeView

TreeView 【其他】 ■TreeView控件可以以树型方式来组织项目,不仅显示直观、界面友好,而且项目的管理和操作更为方便,是当前比较流行的一个控件。 该控件的特点是在较小的空...
  • u012369435
  • u012369435
  • 2014年07月03日 11:38
  • 1203
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:微软的TreeView控件的客户端操作
举报原因:
原因补充:

(最多只允许输入30个字)