解决ASP.NET的TREEVIEW控件不能显示树型结构

本文介绍了如何解决ASP.NET的TREEVIEW控件无法显示树型结构的问题。通过安装IEWebControls,修改Build.bat文件中的csc.exe路径,根据IIS根目录的不同进行相应配置,以及将生成的dll文件放入项目bin目录,可以成功让TREEVIEW控件正常工作。此方法适用于Visual Studio .NET 2003。
当我们使用ASP.NET的TREEVIEW控件时候,我们发现ASP.NET的TREEVIEW控件不能显示树型而是显示为顺序排列的文字。我们该怎么解决呢?


    (1)安装IEWebControls.(下载地址:http://asp.net/IEWebControls/Download.aspx?tabid=1)


    (2)运行Build.bat.注意,我们先用记事本打开Build.bat,在里面我们看到csc.exe,它的前面没有路径,所以我们运行它的时候会产生一个build目录及其相应文件,却在build目录下无法找到Microsoft.Web.UI.WebControls.dll.解决方法:打开C盘(假设操作系统安装在该盘下),搜索csc.exe,我们会发现搜索到两个文件,选择第一个文件(名称为csc)的属性,复制其位置:C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322,然后将它粘贴到Build.bat中csc.exe前面即可(C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/csc.exe),再运行Build.bat.


    (3)

    1.如果IIS的根目录默认的路径(c:/inetpub/wwwroot)没有改变,则只需要将运行Build.bat后生成的build目录下的Runtime目录下的文件和文件夹一起复制到C:/Inetpub/wwwroot/webctrl_client/1_0下就可以了,webctrl_client/1_0这两级目录需要你自己创建.(文件夹名称别弄错了哦!:))

    2.如果IIS的根目录已经由默认的路径(c:/inetpub/wwwroot)改变为其他路径(假设为D:/example),我们需要重新在IIS上注册asp.net,具体步骤:Windows “开始”菜单->“程序”->“Visual Studio .NET 2003”->“Visual Studio .NET 工具”->“Visual Studio .NET 命令提示”,然后在该窗口输入打开后,输入 aspnet_regiis /i 回车即可。成功安装后,你会发现D:/example目录下多了一个名为aspnet_client的文件夹,表示你注册成功了!然后需要将运行Build.bat后生成的build目录下的Runtime目录下的文件复制到D:/example/webctrl_client/1_0下就可以了,webctrl_client/1_0 这两级目录需要你自己创建.

    (4)把生成的Microsoft.Web.UI.WebControls.dll 放到你的工程项目中文件夹的名称为 bin 的目录下。

    这样ASP.NET的TREEVIEW控件就能够正确显示树型结构了!

    友情提示:你成功安装 IEWebControls 后(默认C盘哈),你在C:/Program Files/IE Web Controls下有个README.txt的文本文件,上面非常详细的讲解了如何正确使用 IEWebControls 的方法,并给出了样例。:)

    以上解决方法适用于Visual Studio .NET 2003. 

 

 

 

解决[ASP.NET]"编译器错误信息: CS1595: 已在多处定义"的问题
2007年02月12日 星期一 下午 03:17

遇到golgal文件多处定义的问题,按如下方法得到解决。删除BIN下的所有文件,然后重新生成解决方案。

 

[ASP.NET]解决"编译器错误信息: CS1595: 已在多处定义"的问题

现在本人在开发ASP.NET的项目,期间遇到了很多问题,微软的东西实在是太不好用了

这不被一个问题卡了两天,人都快疯了,明明代码上毫无问题的说,可程序偏偏足跑不起来,
显示的错误为“CS1595:已在多处定义”

后来我又复查了代码,从逻辑的角度出发明明是可以执行的,改了N多的地方,结果一样。

只好上网求人

国内网站上对此类错误并没有做出详细解释,即使有,也是说version设置不正确,无用

再去MSDN,关于CS1595是有相关Bug报告,结果是mscorlib.dll的问题,不是我需要的

再去国外的站点,查找"asp.net,CS1595 , is defined in multiple places",
发现论坛里有篇回复“I have come across it a couple of times. Usually if you have two dlls in your bin folder that contain the same thing. for example I renamed one of my dlls in the compile script but forgot to remove the old version. Check your bin folder and then head over to c:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET Files/ and clear it. ”

于是照着老外的方法,先将Temporary ASP.NET Files文件夹下的文件全部删除,然后再执行一次ASP.NET程序, 这时就可以查看该程序调用了哪些DLL文件。

我的原因是因为在编写过程中未将原先的旧版本DLL文件删除,结果导致class 重复定义。这时再去bin文件夹下查看,将旧版本DLL文件删除,问题得到解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值