对Internet Explorer Web 控件做一点修改
对Internet Explorer Web 控件做一点修改 Microsoft发布了四种ASP.NET Web控件,用于为使用 Microsoft Internet Explorer 的 Web 访问者提供更好的体验。这些 Web 控件称为 Internet Explorer Web 控件,也简称为 IE Web 控件,包括以下四种控件: MultiPage Web 控件 TabStrip Web 控件 Toolbar Web 控件 TreeView 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 文件中,提供了示例以及执行这些任务的命令行指令。) 这里的问题就出来了。如果我们做的系统放到服务器上运行,那么要求服务器上必须安装才行。wwwroot下必须要有webctrl_client这个目录,否则用到这四个控件的地方就不能正常显示。 为了让他随着应该程序一起发布,也就是说服务器不用安装也能正常运行,那么我们就要把它的源代码修改一下了。打到BaseRichControl.cs文件中的 private const string DefaultCommonFilesRoot = '/webctrl_client/'; 看看路经我想你就明白了,它是以wwwroot为根的。修改成 private const string DefaultCommonFilesRoot = 'WebControls/'; 然后再把webctrl_client下面的所有文件copy到你的程序中的WebControls文件夹下就行了 把Microsoft.Web.UI.WebControls.dll加入到然后把WebControls文件夹copy到工程目录下。在使用里面的组件时记着要把SystemImagesPath设置一下。这样就可以不用在服务器上安装IE WEBControls也能正常显示了