ASP.NET中TreeView控件的使用方法

asp.net中TreeView控件的递归呈现方法 asp.net 1.x下的TreeView递归呈现:CREATE TABLE [T_File_Menu] (    [ID] [varchar] (3) COLLATE Chinese_PRC_CI_AS NOT NULL ,    [Context] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,    [HrefUrl] [varchar 阅读详情

TreeView控件的使用方法- -

                                      

 

      树形图用于显示按照树形结构进行组织的数据,其用途比较广泛,如计算机中的文件系统(Windows中的资源管理器)、企业或公司的组成结构等。现在在ASP.NET中利用微软提供的Internet Explorer WebControls它使得网页上的树形图开发与在Windows下一样的方便,一样的功能强大,甚至更灵活。

1.下载地址 
http://msdn.microsoft.com/downloads/samples/internet/ASP_DOT_NET_ServerControls/WebControls/default.asp  安装后,通过“自定义工具箱”->“.net框架组件”把TreeView添加到工具箱里 

2.运行时无法显示 
一般是TreeView的版本问题,最好下载英文版自动安装版本重新安装,安装前应该先到添加删除程序里卸掉原版本 

3.显示格式出错(非树状显示) 
TreeView要求客户端浏览器版本为IE5.5及以上 

4.框架里使用TreeView 
设置NavigateUrl、Target属性,可更新另外的Frame 

5.找不到TreeNode类 
使用TreeView,需要添加namespace:using Microsoft.Web.UI.WebControls;

6.遍历TreeView节点
下面是一个利用TreeView控件生成树状导航的示例。可以无限生成多级菜单。

树型结构表Para_Item
Item_ID(节点ID)   Item_Name(节点名)   Parent_ID(父结点ID)
              1                          All                                 0
              2                         aaa                               1
              3                         bbb                               1
              4                         aaa_1                           2
              5                         bbb_1                           3               
 
//页面初始化
private void Page_Load(object sender, System.EventArgs e)
{
// 定义数据库连接
SqlConnection sqlConection_Tree = new SqlConnection();
//初始化连接字符串
sqlConection_Tree.ConnectionString= Session["ConnString"].ToString();
//打开连接
sqlConection_Tree.Open();
 
//获取Faq树形目录节点
SqlDataAdapter sqlDataAdapter_Tree = new SqlDataAdapter("select Item_id,Item_name,Parent_ID from Para_item",sqlConection_Tree);
DataSet DataSet_Tree=new DataSet();
sqlDataAdapter_Tree.Fill(DataSet_Tree);
this.ViewState["DataSet_Tree"]=DataSet_Tree;

//调用递归函数,完成树形结构的生成
AddTree(0, (TreeNode)null);
}


//递归添加树的节点 参数ParentID为树的最大父结点
public void AddTree(int ParentID,TreeNode pNode)
{
  DataSet DataSet_Tree=(DataSet) this.ViewState["DataSet_Tree"];
  DataView DataView_Tree = new DataView(DataSet_Tree.Tables[0]);
  //过滤ParentID,得到当前的所有子节点 ParentID为父节点ID
  DataView_Tree.RowFilter =  "[Parent_ID] = " + ParentID;
 
  //循环递归
  foreach(DataRowView Row in DataView_Tree)
  {
    //声明节点
    TreeNode Node=new TreeNode() ;
    //绑定超级链接
    Node.NavigateUrl = "List.aspx?Item_ID="+Row["Item_ID"].ToString();
    //开始递归
    if(pNode == null)
    {
      //添加根节点
      Node.Text = Row["item_name"].ToString();
      TreeView_Tree.Nodes.Add(Node);
      Node.Expanded=true; //节点状态展开
      AddTree(Int32.Parse(Row["item_id"].ToString()), Node);    //再次递归
    }
    else
    {  
      //添加当前节点的子节点
      Node.Text = Row["item_name"].ToString();
      pNode.Nodes.Add(Node);
      Node.Expanded = true; //节点状态展开
      AddTree(Int32.Parse(Row["item_id"].ToString()),Node);     //再次递归
    }
  }
  //关闭连接
  sqlConection_Tree.Close();
}

生成的树型如下:
All
|-aaa
   |-aaa_1
|-bbb
   |-bbb_1

7.控制父结点的开/合状态
TreeView_Tree.GetNodeFromIndex("1").Expanded=false/true;

8.清除某个父结点下的所有子节点
TreeView_IndexLeft.GetNodeFromIndex("1").Nodes.Clear();

9.设置所选节点,如选中第二个节点 
function SetSelNode() 
{ 
 TreeView_Tree.selectedNodeIndex="1"; 
} 

10.得到所选节点的Text,ID或NodeData 
function GetAttribute() 
{ 
 alert(TreeView_Tree.getTreeNode(TreeView_Tree.selectedNodeIndex).getAttribute("Text")); 
} 
//替换Text为ID或NodeData,可分别得到所选节点的ID或NodeData 

11.修改节点属性,如修改第一个节点的Text 
function ModifyNode() 
{ 
 var node=TreeView_Tree.getTreeNode("0"); 
 node.setAttribute("Text","第一个节点"); 
} 

12.添加节点 
function AddNode() 
{ 
 var node=TreeView_Tree.createTreeNode(); 
 node.setAttribute("Text","第一个节点"); 
 TreeView_Tree.add(node);     
} 

13.TreeView 中的SelectedIndexChange不执行
AutoPostBack=true,SelectedIndexChange才能被执行。 

14.判断 TreeView 的一个节点下是否有子节点 
if(SelectNode.Nodes.Count==0)
{ 
  //该节点没有字节点 
} 


  http://www.weste.net/2005/7-18/10210076959.html(另外一个图形化示例)
ASP.NET 2.0 的TreeView控件点击节点触发事件的方法 在网上找了很多,几乎都是1.0的TreeView的操作方法,在msdn上才查到2.0点击节点触发事件的方法,其实很简单,就是下面 这段代码,似乎比1.0要简单些。@ Page Language="C#" %>script runat="server">    void Select_Change(Object sender, EventArgs e)    ...{        Mess 阅读详情

相关推荐

ASP.NET treeView异步加载节点

ASP.NET treeView 异步加载事例代码 适用于自引用表

ASP.NET TreeView树型菜单操作实例(代码调试通过)

本实例完成TreeView树型菜单添加,修改,删除,绑定DropDownList功能,移动功能读者可以自行书写.aspx代码       width="700" border="1">                 TreeView操作实例                       runat="server">             cellPadding="1" width=

4716

6 赫斯曼网管软件industrial hivision用户管理

文章目录前言一、打开Industrial HiVision服务器二、在用户管理界面添加策略三、使用可选策略四、接受策略总结 前言 安装 Industrial HiVision 后,所有人都能广泛使用程序。安全起见,请进行相 关配置,对访问权限进行限制。 本文主要介绍用户管理基于某种角色模型。在访问角色中定义角色名称,通过分配访问权限给这些角色分配角色功能。例如,给管理人员自然要分配可用的权限,而观察员尽管可以登录,但没有能够进行更改的权限。Industrial HiVision 提供以下访问角色: 

t98746194的博客 1378

【ASP.NET 进阶】TreeView控件学习

转载自:http://www.cnblogs.com/yc-755909659/p/3596039.html TreeView 控件用于在树结构中显示分层数据,例如目录或文件目录等。 下面看代码吧: 1.效果图   2.静态数据方式(即在页面上使用标签) TreeView

itiswangwang的博客 942

【MBD开发】Simulink中的枚举

01 什么是枚举 按百度百科的词条【枚举】是在编程语言中用来存储一组固定的常量。不同编程语言的枚举语法也不一样,以C语言为例。 typedef enum{ GEAR_P, //0:P挡 GEAR_R, //1:倒挡 GEAR_N, //2:空挡 GEAR_D, //3:前进}_GEAR; 上面枚举了一个_GEAR数据,用GEAR_P表示0,GEAR_R表示1……​​​​​​​ if(current_gear==GEAR..

f6723的博客 3095

【Clickhouse从入门到精通】第51篇:ClickHouse权限管理体系详解

摘要 本文是ClickHouse权限管理系列文章的第51篇,重点解析ClickHouse RBAC权限体系中的GRANT/REVOKE机制。文章详细介绍了GRANT语句的基础语法与权限类型,包括SELECT、INSERT等常规权限以及WITH GRANT OPTION转授权功能。特别深入讲解了列级权限的实现方式,通过SELECT(col1,col2)语法实现字段粒度的访问控制,并展示了权限查询与验证方法。本文还对比了ClickHouse 20.4版本前后权限管理体系的差异,为构建安全的多租户数据平台提供了关

xyghehehehe的专栏 440

ASP.NET中的TreeView控件的使用

1、首先建立一个Default.aspx的主页面,再建立一个站点地图:Web.sitemap 2、Default.aspx的主页面的设计 http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> http://www.w3.org/1999/xhtml">

gengyudan的专栏 757

HFSS螺旋线圈的优化设计与高效仿真实践

本文详细介绍了HFSS螺旋线圈的优化设计与高效仿真实践,涵盖核心参数设置、参数化建模、仿真加速技巧及结果分析。通过HFSS软件实现螺旋线圈的高效仿真,特别适用于无线充电和RFID系统设计,提升设计效率与性能验证准确性。

weixin_30235225的博客 443

ASP.NET TREEVIEW 使用方法

iewc TreeView 没有层次 解决方法如下1,根目录下需要有aspnet_client 2, 根目录下需要有webctrl_client 3,浏览器设置:安全-internet-自定义级别 - 二进制和脚本行为,允许 简介   在2002年,Microsoft发布了四种ASP.netWeb控件,用于为使用 Microsoft Internet Explorer ...

weixin_30471065的博客 361

(11-3-03)多任务与元强化学习:综合实战:基于元强化学习的迷宫导航系统(3)

本文介绍了策略网络隐空间可视化的实现方法及其在强化学习中的应用。通过设计visualize_latent_space函数,使用t-SNE算法将高维隐空间特征降维至二维进行可视化,直观展示策略网络在不同任务中的特征分布。文章详细阐述了实现流程:状态收集、t-SNE降维和可视化绘图,并提供了完整的Python代码示例。实验结果表明,该方法能有效分析策略网络的学习过程与适应能力,为优化模型提供重要依据。同时,文章还介绍了主程序的完整流程,包括环境初始化、元智能体训练与评估、学习策略比较等环节,最后对实验结果进行可

码农三叔 1041

一文学会python基础知识

1. python 运行环境 1.1 脚本式环境 1.2 交互式环境 2. python 注释 3. 变量及变量命名 4. 关键词 BIFS 5. 标准操作符 6. 条件判断 7. 循环 8. python 数据类型 9. python 序列 9.1 序列-字符串(str) 9.2 序列-列表 9.3 序列-元组 10. 字典 11. 集合 12. python内存管理及可变、不可变对象 13. 函数 13.1 函数参数 13.2 return and yiled(生成器) 13.3 参数传递处理 ...

weixin_43178406的博客 26万+

asp.NET中 treeview 控件的使用

asp.NET中 treeview 控件的使用 treeview控件实现点击Node,弹出相应WebUserControl画面 所需控件 treeview控件 WebUserControl,web用户控件 PlaceHolder占位符控件 所需事件与方法 treeview的SelectedNodeChanged事件 placeholder的PlaceHolder1.Controls.Add(...

answerhuchen的博客 800

面试问题总结——关于OpenCV(一)

整理了一下网上和我面试中遇到的关于OpenCV相关的问题。 其中因为我的简历中有个项目用到了特征点检测相关的知识,所以整理了SIFT/SURF和FLANN。 有些知识点也不深入,对于写的不对的地方,欢迎指正。 关于OpenCV的内容 1.OpenCV中cv::Mat的深拷贝和浅拷贝问题   深拷贝:分配新内存的同时拷贝数据,当被赋值的容器被修改时,原始容器数据不会改变。   浅拷贝:仅拷贝数据,当被赋值容器修改时,原始容器数据也会做同样改变。 OpenCV的Mat时,有几种赋值方式分别为:   深.

boss-dog 1万+

在ASP.NET中使用Treeview控件和XML

以前,在WEB页面中如果想使用树形控件的话,往往会有些麻烦,有时甚至要自己写代码来达到用树形列表显示数据的目的。在asp.net中,我们可以很方便地使用由微软提供的Internet Exploer Web Controls控件来实现树形列表。在微软提供的这套Internet Exploere Web Controls控件集合中,包括有MultiPage,TabStrip,TOOLbar,Treev

vzxq的专栏 1835

告别 DIFY 构建卡顿 / 失败!巧用 Makefile 一键构建本地 WEB 镜像,附核心避坑指南

本文详细介绍了DIFY本地源码构建WEB镜像的完整流程,重点解决因官方npm源不稳定导致的构建失败问题。通过修改web/Dockerfile文件启用国内npmmirror镜像源,可大幅提升依赖下载速度和稳定性。在DIFY根目录执行封装好的make build-web命令即可一键完成构建,无需手动编写复杂docker命令。文章还提供了前置环境准备、构建结果验证等实用指导,帮助开发者高效完成DIFY前端二次开发后的镜像构建验证。

2501_93651177的博客 181

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

ASP.NET中TreeView控件使用小结

      在上网浏览时有时会看到一些网站在左边采用类似资源管理器的树形结构,在树形结构中单击,在右边显示内容,层次清晰且方便快捷,本文主要介绍ASP.NET服务器控件treeview 的使用方法,treeview控件属于microsoft webcontrols,在下载和使用过程中本人碰到一些问题,通过反复实验,查找资料,找到一些解决办法,现把treeview使用心得写出来,旨在对想在网站中使用

要饭's Blog 2416

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

asp.net treeview控件无刷新选择和删除节点的ajax方法

 要想做到treeview在客户端的操作的话,首先要了解treeview生成的html,比如下面一个treeview它的每一个节点生成的html都是一个table,比如说根节点     table cellpadding="0" cellspacing="0" style="border-width:0;">        tr>            td>a id="T

天天无用 1万+

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

ASP.NET中TreeView控件的安装及使用

因为要用到treeview控件,今天在网上捣腾了半天,终于把资料收得七七八八,下面是我找到得一些资料! (http://www.jtr.cn/ASPNET/kf/1456/091826109.shtml)treeview控件属于microsoft webcontrols一、下载  microsoft webcontrols控件包括四个组件:MultiPage、TabStrip、Tool

fancy198189的专栏 2174

ASP.NET中TreeView控件用法

ASP.NET中TreeView控件用法     一、下载   microsoft webcontrols控件包括四个组件:MultiPage、TabStrip、Toolbar、treeView,treeview可以到http://msdn.microsoft.com

553

ASP.NET TreeView控件实现菜单方法(简单易懂)

@[TOC]ASP.NET TreeView控件使用方法 1.界面如下: 其中界面由xml源文件直接绑定,绑定方法如下: 1) 新建xml,结构随意。 2)选择控件数据源后点击确定。 3. 实现点击treeview跳转页,如下: protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e) { TreeView1.SelectedNode.Target = "context";

ganyonjie的博客 819

利用Treeview实现树形列表

以前,在WEB页面中如果想使用树形控件的话,往往会有些麻烦,有时甚至要自己写代码来达到用树形列表显示数据的目的。在asp.net中,我们可以很方便地使用由微软提供的Internet Exploer Web Controls控件来实现树形列表。在微软提供的这套Internet Exploere Web Controls控件集合中,包括有MultiPage,TabStrip,TOOLbar,Treev

vzxq的专栏 1156

在ASP.NET中应用TreeView控件

事情的起因是这样的,编写的ASP.NET程序,其中有一部分页面是显示一个树行的目录。但是此目录是动态的,是从数据库中检索,然后将节点加入到此树形目录中。TreeView是Windows标准控件,在VS.NET中编写ASP.NET程序的时候,面板上并没有这个控件,不过微软又发布了IEWebControl,其中就包含WEB下的TreeView控件。但是想要真正的应用此控件,却不是那么容易了。因为其文档

::: 移动互联网时代开发者 ::: 2420

ASP.NET中的TreeView控件

在开发项目时,涉及到菜单级别。利用ASP.NET技术中的TreeView控件来实现菜单级别特效。  TreeView控件应用一:导航 实例开发网购网站或是一些应用级别类的网站时,利用TreeView控件会提高工作的效率。 一: TreeView控件重要属性: 1、Text文本:指的是节点的文本值; 2、value:指的是节点的相对应的编号值。 3、ShowCheckBoxs(all、

u011030751的专栏 979
上一篇: JS动态添加删除控件
下一篇: 数据绑定服务器控件
jackeyabc
博客等级 码龄20年 71粉丝 297原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值