惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
H
Help Net Security
Jina AI
Jina AI
V
V2EX
G
Google Developers Blog
B
Blog
GbyAI
GbyAI
U
Unit 42
爱范儿
爱范儿
腾讯CDC
Engineering at Meta
Engineering at Meta
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 三生石上(FineUI控件)
宝玉的分享
宝玉的分享
小众软件
小众软件
D
DataBreaches.Net
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - Franky
博客园 - 聂微东
The Cloudflare Blog
I
InfoQ
Microsoft Azure Blog
Microsoft Azure Blog
Hugging Face - Blog
Hugging Face - Blog
大猫的无限游戏
大猫的无限游戏

博客园 - 阿社

!!如何看到真实的服务器 错误提示 !访问网站出现Directory Listing Denied 是什么原因? !后台登录总 提示验证码错误!! !设置IIS后 访问提示 页面不存在 HTTP 500错误 Windows2003网络服务器安全攻略! Win2003 ISS下Asp配置技巧 http 500内部服务器错误 !商城登录后不能自动在社区登录! 使用IE WebControls中的TabStrip控件和MultiPage控件实现选项卡式风格页面 [程序员必看]请不要做浮躁的人 未能在设计视图中打开,在中以不同方式将值括起来 我应该用DataReader类还是DataSet类呢?” DataGrid、DataList和Repeater控件 ListBox控件使用 DropDownList控件使用 C#笔记 C#常用函数和方法集汇总-日期函数 ASP常用三十三种代码 ASP.net数据绑定概述和语法 编程控制控件Style属性
ASP.NET中TreeView控件使用小结
阿社 · 2006-09-24 · via 博客园 - 阿社

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

  一、下载

  microsoft webcontrols控件包括四个组件:MultiPage、TabStrip、Toolbar、treeView,treeview可以到http://msdn.microsoft.com/downlo ... ontrols/default.asp去下载,下载后得到文件IEWebControls,只有360KB,安装后自动在C:\Program Files建立IE Web Controls,执行其下面的bulid.bat,如果安装后还不能使用可以采用以下方法解决:

  1、打开bulid.bat的内容,查看csc.exe路径是否正确,一般不能正确使用这可能是原因之一,csc.exe为系统文件,如果它的路径与你的计算机不符合,修改后存盘再执行bulid.bat,将得到Microsoft.Web.UI.WebControls.dll和一些文件夹。

  2、查看默认的web站点,一般默认的web站点为C:\Inetpub\wwwroot,如果不是可以通过打开管理工具àInternet 服务管理器,方法:对默认web站点单击右键à属性à主目录,修改主目录。

  3、将C:\Program Files\IE Web Controls\build下runtime文件夹下所有内容复制到主目录\webctrl_client\1_0下,是将iewebcontrols四大控件的系统文件复制到默认web站点下。

  4、将C:\Program Files\IE Web Controls\build下Microsoft.Web.UI.WebControls.dll文件复制到主目录中建立的项目文件夹下\bin中。

  通过对以上四个方面的操作,iewebcontrols才能正常使用。

  二、添加控件

  打开Microsoft Visual Studio .NET, 在web工具箱中单击右键,选择自定义工具箱à.NET框架组件,通过浏览添加Microsoft.Web.UI.WebControls.dll文件,添加后可以在.NET框架组件中选择命名空间为microsoft.web.ui.webcontrols的treeview。

  三、treeview属性和方法介绍

  在窗体中添加一个treeview控件,通过treeview对象的属性nodes创建所需的树形结构。

  例:建立如下树形结构

  窗体中HTML代码为:

<iewc:treeview id=”treeview1” autoselect=false shoplus=true showlines=true expandlevel=2 runat =server>
<iewc:treenode text=”科目” >
<iewc:treenode text=”语文” />
<iewc:treenode text=”数学” />
<iewc:treenode text=”英语” />
</iewc:treenode>
</iewc:treeview>

  1、autoselect=”false”:当访问者在treeview控件中对节点进行定位时,可以使用键盘上的箭头来进行定位。属性值为“false“,则不允许这样做。

  2、Showplus=”true”:当两个节点收到一起的时候,你可以显示一个加号(+),访问者就知道这个节点可以展开,该属性值为“true“将使用加号,否则不使用。

  3、Showlines=”true”:在一个treeview控件中的两个节点之间,可以显示一些线长,为”true”显示。

  4、Expandlevel=2:用来定义treeview控件的层次结构展开的级别数。

  5、navigateurl:点击节点时的跳转网址

  如:

<iewc:treeview id=”treeview2” runat =server>
<iewc:treenode text=”喜爱的站点” >
<iewc:treenode text=”中国DOTNET俱乐部” navigateurl=”http://www.chinaaspx..com” />
<iewc:treenode text=”国家基础教育资源网” navigateurl=”htt://www.cbern.gov.cn” />
</iewc:treenode>
</iewc:treeview>

  6、index:获取树节点在树节点集合中的位置

  7、nodes:获取分配给树视图控件的树节点集合

  8、parent:获取或设置控件的父容器

  9、selectednode:获取或设置当前在树视图控件中选定的树节点

  10、text:获取或设置在树节点标签中显示的文本

  11、expand:展开树节点

  12、clear:清空树

  13、remove:移除当前树节点

  14、checked:用以指明该树节点是否处于选中状态

  四、简单示例

  对左边树形结构进行选择,在右边表格中查询显示结果。

  说明:

  1、 SelectedIndexChange事件是对树结构进行选择时产生的,还有一个触发条件autopostback=true。

  2、 例中数据库由SQL 2000建立。

  代码如下:

Imports System.Data
Imports System.Data.SqlClient
Public Class tree1
Inherits System.Web.UI.Page
Protected WithEvents Button1 As System.Web.UI.WebControls.Button
Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
Protected WithEvents Label1 As System.Web.UI.WebControls.Label
Protected WithEvents Label2 As System.Web.UI.WebControls.Label

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim strconnection As String = "server=zln\netsdk;uid=sa;pwd=sa;database=english"
Dim conn As New SqlConnection(strconnection)
conn.Open()
Dim sql As String = "select * from zlk where kemu='" & Session("node").ToString & "'"
Dim cmd As New SqlCommand(sql, conn)
Dim da As SqlDataReader
da = cmd.ExecuteReader
DataGrid1.DataSource = da
DataGrid1.DataBind()
End Sub

Private Sub TreeView1_SelectedIndexChange(ByVal sender As Object, ByVal e As Microsoft.Web.UI.WebControls.TreeViewSelectEventArgs) Handles TreeView1.SelectedIndexChange
Dim ndsel As New Microsoft.Web.UI.WebControls.TreeNode()
ndsel = TreeView1.GetNodeFromIndex(TreeView1.SelectedNodeIndex)
Session("node") = ndsel.Text
End Sub
End Class