分享
 
 
 

ASP.NET中使用TreeView控件

王朝asp·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

简介

在2002年,Microsoft发布了四种ASP.net Web控件,用于为使用 Microsoft Internet Explorer 的 Web 访问者提供更好的体验。这些 Web 控件称为 Internet Explorer Web 控件,也简称为 IE Web 控件,包括以下四种控件:

MultiPage Web 控件

TabStrip Web 控件

Toolbar Web 控件

TreeView Web 控件

这些 Web 控件通过提供 Web 访问者熟悉的用户界面,增强了 ASP.NET Web 页面。例如,Toolbar Web 控件可以显示一个与各种 Microsoft Office 产品中的工具栏相类似的可单击工具栏。TabStrip 和 MultiPage Web 控件配合使用后可以显示选项卡式内容。TreeView Web 控件可以用来显示可单击、可展开的树中的数据 - 与在 Microsoft Windows? 资源管理器中用树来显示 PC 文件系统中的驱动器和文件夹很类似。(您可以在 GotDotNet 站点找到这些 Web 控件的生动演示:WebControl Toolbar 演示、TabStrip/MultiPage WebControl 演示和 TreeView Sample WebControl 演示。)

IE Web 控件可以在安装了 .NET Framework 版本 1.0 或 1.1 的 Web 服务器上使用。尽管 IE Web 控件是设计用来与 Internet Explorer 配合使用的,但这些 Web 控件也可以显示在其他浏览器中。不过,在 Internet Explorer 以外的浏览器中,当用户与 IE Web 控件交互时(例如展开 TreeView Web 控件中的某个节点),会发生回传。在 Internet Explorer 5.5 或更高版本中,IE Web 控件会发送 DHTML 代码,从而避免了回传的发生。也就是说,在访问您的 Web 站点时,使用 Internet Explorer 5.5 或更高版本的访问者将会比使用其他浏览器的用户获得更好的用户体验;当然,没有使用 IE 5.5 或更高版本的用户仍可以看到 IE Web 控件,并可以与之进行交互。

下面,本文将主要介绍 TreeView IE Web 控件,并讨论如何使用此控件在 ASP.NET Web 页面中显示数据。有关其他 IE Web 控件的详细信息,请参阅 Internet Explorer Web Controls Overview 和 Internet Explorer Web Controls Reference。

安装IE Web控件

要在 ASP.NET Web 应用程序中使用 IE Web 控件,首先必须下载控件的源代码,然后运行一个编译批处理文件,对源代码进行编译并将所需的所有文件复制到相应的 Web 应用程序目录中。Internet Explorer Web 控件下载程序包是一个大小为 360 KB 的自解压安装文件。

下载并安装完 IE Web 控件后,将创建一个新目录(默认为 C:\Program Files\IE Web Controls\,您也可以在安装过程中配置此目录)。找到这个新目录,然后双击 build.bat 文件。这将创建一个新的子目录 build,编译 src 子目录中的类,并将生成的程序集和支持文件复制到 build 子目录中。

运行完 build.bat 文件后,build 子目录将包含程序集文件 Microsoft.Web.UI.WebControls.dll 和子目录 Runtime。要在 ASP.NET Web 应用程序中使用 IE Web 控件,必须将 build\Runtime 子目录中的内容复制到 Web 应用程序的 /webctrl_client/1_0 子目录中,并将程序集文件 (Microsoft.Web.UI.WebControls.dll) 复制到 Web 应用程序的 /bin 子目录中。(在 IE Web 控件的 README.txt 文件中,提供了示例以及执行这些任务的命令行指令。)

IE Web控件入门

如果使用的是 Microsoft Visual Studio? .net 来开发 ASP.NET Web 应用程序,则将 IE Web 控件添加到 ASP.NET Web 页是件轻松的事。首先,将 IE Web 控件包含在工具箱中。要完成这项操作,请右击 Toolbox(工具箱),然后选择 Customize Toolbox(自定义工具箱)选项。选择 .NET Framework Components(.NET Framework 组件)选项卡,然后单击 Browse(浏览)按钮。找到 Microsoft.Web.UI.WebControls.dll 程序集文件,然后单击 OK(确定)。这会将 MultiPage、TabStrip、Toolbar 和 TreeView 等 IE Web 控件添加到 Visual Studio .NET 工具箱中。要将以上控件中的任何一种添加到 ASP.NET Web 页中,只需要将相应的控件从工具箱拖放到设计器中即可。

要在内含代码的类中使用 IE Web 控件,首先需要右击 Reference(引用),然后选择 Add Reference(添加引用),将引用添加到 Microsoft.Web.UI.WebControls.dll 程序集中。然后,在内含代码的类中,如果使用的是 C# ,则添加 using Microsoft.Web.UI.WebControls;如果使用的是 Microsoft Visual Basic .NET,则添加 Imports Microsoft.Web.UI.WebControls。

如果不是使用 Visual Studio .NET 作为 ASP.NET Web 应用程序编辑器,则需要在 ASP.NET Web 页的顶端手动添加以下 @ReGISter 指令:

<%@ Register TagPrefix="whatever"

Namespace="Microsoft.Web.UI.WebControls"

Assembly="Microsoft.Web.UI.WebControls" %>

然后,将IE Web控件添加到Web页中,可以使用以下语法:

<whatever:WebControlName runat="server" ...>

...

</whatever:WebControlName>

例如,要添加 TreeView 控件,可以在页面顶端添加以下 @Register 指令:

<%@ Register TagPrefix="iewc"

Namespace="Microsoft.Web.UI.WebControls"

Assembly="Microsoft.Web.UI.WebControls" %>

接着,在ASP.NET Web页中希望显示TreeView的位置添加以下Web控件语法:

<iewc:TreeView runat="server" ...>

...

</iewc:TreeView>

IE Web控件入门

如果使用的是 Microsoft Visual Studio? .net 来开发 ASP.NET Web 应用程序,则将 IE Web 控件添加到 ASP.NET Web 页是件轻松的事。首先,将 IE Web 控件包含在工具箱中。要完成这项操作,请右击 Toolbox(工具箱),然后选择 Customize Toolbox(自定义工具箱)选项。选择 .NET Framework Components(.NET Framework 组件)选项卡,然后单击 Browse(浏览)按钮。找到 Microsoft.Web.UI.WebControls.dll 程序集文件,然后单击 OK(确定)。这会将 MultiPage、TabStrip、Toolbar 和 TreeView 等 IE Web 控件添加到 Visual Studio .NET 工具箱中。要将以上控件中的任何一种添加到 ASP.NET Web 页中,只需要将相应的控件从工具箱拖放到设计器中即可。

要在内含代码的类中使用 IE Web 控件,首先需要右击 Reference(引用),然后选择 Add Reference(添加引用),将引用添加到 Microsoft.Web.UI.WebControls.dll 程序集中。然后,在内含代码的类中,如果使用的是 C# ,则添加 using Microsoft.Web.UI.WebControls;如果使用的是 Microsoft Visual Basic .NET,则添加 Imports Microsoft.Web.UI.WebControls。

如果不是使用 Visual Studio .NET 作为 ASP.NET Web 应用程序编辑器,则需要在 ASP.NET Web 页的顶端手动添加以下 @ReGISter 指令:

<%@ Register TagPrefix="whatever"

Namespace="Microsoft.Web.UI.WebControls"

Assembly="Microsoft.Web.UI.WebControls" %>

然后,将IE Web控件添加到Web页中,可以使用以下语法:

<whatever:WebControlName runat="server" ...>

...

</whatever:WebControlName>

例如,要添加 TreeView 控件,可以在页面顶端添加以下 @Register 指令:

<%@ Register TagPrefix="iewc"

Namespace="Microsoft.Web.UI.WebControls"

Assembly="Microsoft.Web.UI.WebControls" %>

接着,在ASP.NET Web页中希望显示TreeView的位置添加以下Web控件语法:

<iewc:TreeView runat="server" ...>

...

</iewc:TreeView>

TreeView 的其他高级功能

虽然使用 Visual Studio .net 将静态 TreeNote 添加到 TreeView 的过程非常简单,但通常需要将内容动态地添加到 TreeView 中。例如,您将家族树信息存储到了数据库中,或是正在设计一个资源管理器风格的 Web 应用程序(在此应用程序中,用户可以浏览 Web 服务器的文件系统),这时您可能需要根据服务器的文件夹和文件来动态填充 TreeNote。

在内含代码的类中,可以通过编程方式将 TreeNote 添加到 TreeView 中。要将新的 TreeNote 添加到现有的 TreeNote 中,只需要使用 Nodes 属性的 Add() 方法。例如,以下 C# 代码将创建两个 TreeNote,并将第二个 TreeNote 添加为第一个 TreeNote 的子节点。然后,将第一个子节点添加到 TreeView 的根节点中。

// 创建第一个 TreeNote

TreeNode tvFirst = new TreeNode();

tvFirst.Text = "First Tree Node";

// 创建第二个 TreeNote

TreeNode tvSecond = new TreeNode();

tvSecond.Text = "Second Tree Node";

// 将第二个 TreeNote 添加为第一个 TreeNote 的子节点

tvFirst.Nodes.Add(tvSecond);

// 将第一个 TreeNote 添加到 TreeView 的根节点中。

tvFamilyTree.Nodes.Add(tvFirst);

遗憾的是,将数据库数据绑定到 TreeView 可不像将数据绑定到某个标准 ASP.NET Web 控件那么简单。因为 TreeView 本身用于显示分层数据,所以不太适合显示简单 SQL 查询的结果。因此,TreeView 不是用来显示简单 SQL 查询的内容的,而是用来显示 XML 文件的内容。所以,为了便于在 TreeView 中显示数据库信息,必须首先将其转换为 XML。

而且,虽然可以在 TreeView 控件中显示静态或动态 XML 文件,但是,TreeView 要求 XML 数据具有特定的格式。因此,要在 TreeView 中显示 XML 文件,必须提供 XSLT 样式表,以将 XML 从当前格式转换到 TreeView 要求的格式。有关如何完成此任务的详细信息,请参阅我的文章:Displaying XML Data in the Internet Explorer TreeView Control。

此外,TreeView 的 TreeNote 除了支持图像和超链接之外,其旁边还可以包含复选框。而且,当用户展开或折叠 TreeNote,选择 TreeNote,或者选中或取消选中带有复选框的 TreeNote 时,都会引发相应的事件。可以为这些事件创建事件处理程序,以自定义这些事件引发的相应操作。

小结

在本文中,我们简要地介绍了 IE Web 控件以及如何获得和安装这些控件,并详细讨论了如何使用 TreeView IE Web 控件。TreeView 控件的显示方式类似于标准的 Windows TreeView(可通过在 Windows 资源管理器中进行操作来体验)。TreeView 用来显示分层数据,可以由任意多个 TreeNote 组成,每个 TreeNote 又可以包含任何多个子 TreeNote。

可以用多种不同的方式自定义 TreeNote 的外观。例如,可以为处于折叠、展开和选中状态的 TreeNote 分别指定不同的图像。当单击 TreeNote 时,TreeNote 可以作为超链接将访问者重定向到其他 URL。TreeNote 还可以包含复选框。

使用 Visual Studio .NET 并借助 TreeNote 编辑器可

[1] [2] 下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有