当前位置:  开发笔记 > 后端 > 正文

尝试添加ajax TabContainer,得到错误"控件集合无法修改,因为控件包含代码块(即<%...%>)."

如何解决《尝试添加ajaxTabContainer,得到错误"控件集合无法修改,因为控件包含代码块(即<%%>)."》经验,为你挑选了1个好方法。

我想在我的网页上添加一个ajax:TabContainer.我没有得到任何构建错误,但是当我尝试浏览到该页面时,它给出了错误:"控件集合无法修改,因为控件包含代码块(即<%...%>)." .

我重新下载了样本站点的Ajax Control Toolkit,在VS中打开了解决方案,为TabContainer运行了样本,并且运行正常.我认为它可能是Ajax Control Toolkit的另一个版本 - 但没有.这两个站点引用的AjaxControlToolkit.dll文件是相同的.为什么我不能让TabContainer在我的网站上运行?

还有一个问题,但我不知道它是否相关.我刚刚安装了Visual Studio 2008.一旦我打开我的网站,VS就会自动在工具箱中创建"AJAX Controls"选项卡,并用所有ajax控件填充它.在源代码中,所有控件都以"ajax"为前缀 - 即"".

但是,当我打开示例网站时,Visual studio在工具箱中创建了另一个选项卡 - "AjaxControlToolkit Components",其中包含与"AJAX Controls"中相同的所有控件.我不知道为什么它两次添加相同的控件(但奇怪的是,在工具箱中有不同的图标).在源代码中,所有控件都以"ajaxToolkit"为前缀 - 即"".这里发生了什么?我只是希望在我的网站上使用强制TabContainer.



1> Keith..:

您不能在使用标准服务器呈现的控件中使用<%=%>(写入)块 - 您会收到此错误.

为了使ASP AJAX组件能够工作,您需要:

...

否则它也会因此错误而崩溃.

但是,您可以在这些服务器控件中进行数据绑定:


    " />
...

然后在你的页面加载:

Page.Header.DataBind();

由于ASP WebForms将控件呈现为组件集合的方式发生错误 - 它们可以处理集合(并期望数据绑定<%#)或文字写入(并期望<%=)但不能同时处理两者.

永久避免此问题的最佳方法是切换到ASP MVC.

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有