我想使用一个treeview控件来显示文件夹的结构,可以在asp.net中没有默认的treeview控件,于是,我查找了相关资料,知道微软发布了它的控件iewebcontrols.我下载了该控件,并安装到了自己的机器上。
1、下载:
下载的网址
http://msdn.microsoft.com/downloads/samples/internet/asp_dot_net_servercontrols/webcontrols/
2、安装:
首先,解压缩然后运行builder.bat。发现报错,检查了一下,原来是csc.exe没有找到。所以,我修改了一下批处理,在csc.exe前面加上了这个文件的完全路径,批处理的内容就变成了:
@if "%_echo%"=="" echo off
if not exist build mkdir build
c:\windows\microsoft.net\framework\v1.1.4322/csc.exe /out:build\microsoft.web.ui.webcontrols.dll @iewebcontrols.rsp
xcopy src\runtime build\runtime /e /y /i /q
然后,根据readme的提示,在默认站点下创建了一个文件夹c:\inetpub\wwwroot\webctrl_client,然后再在这个文件夹下创建了“\1_0”文件夹,然后,将builder目录下的文件拷到这个文件夹下,这个文件夹包含下列文件:
/webctrl_client/1_0
multipage.htc
tabstrip.htc
toolbar.htc
treeview.htc
webservice.htc
webserviced.htc
[images]
[treeimages]
然后,将生成的dll文件(microsoft.web.ui.webcontrols.dll)复制到你新创建的web应用下的bin目录下
3、使用
根据提供的例子文件,创建一个web应用,打开要编辑的页面,在最上面增加下列句子:
<%@ register tagprefix="ie" namespace="microsoft.web.ui.webcontrols" assembly="microsoft.web.ui.webcontrols" %>
在适当位置放上这个控件:
<ie:treeview id="treeview1" runat="server"></ie:treeview></td>
或者,通过在工具箱上“添加/移除”这些控件,然后,将工具箱的控件拖拽到相应的位置。
4、增加节点
如果,你需要写固定的节点,你可以在该控件的属性中修改“nodes”属性来建立树形结构。
如果,是动态生成的话,你必须修改cs代码文件。步骤大概如下:
a、添加引用
b、定义treeview:
protected microsoft.web.ui.webcontrols.treeview treeview1;
c、生成节点:
microsoft.web.ui.webcontrols.treenode filenode1=new microsoft.web.ui.webcontrols.treenode();
d、设置节点属性
filenode1.text="根节点";
filenode1.target="http://www.csdn.net";
e、将节点加入treeview
treeview1.nodes.add(filenode1);