我正在尝试将网站转换为Web应用程序项目模型,并且我遇到了编译错误,这些错误似乎没有被我在Converting a Web Site Project to a Web Application Project找到的指导所涵盖。
问题是,在Ajax Control Toolkit的TabContainer / TabPanel的ContentTemplate中作为子控件嵌入的标准ASP.NET控件对页面不再可见(并导致编译错误)。它们似乎只能通过调用FindControl来引用,而当项目是一个Web站点时,它们可以在页面的代码隐藏文件中作为属性直接访问。
不幸的是,我们有很多使用TabContainer的webforms,并且将所有对子控件的引用从简单的属性重新调用转换为FindControl调用将会非常麻烦。
在研究问题时,我发现Single Instance Templates中有一个名为TemplateInstance的属性的引用似乎很有希望,但我知道这适用于控件设计者,而不是控制用户。任何帮助将不胜感激。
答案 0 :(得分:0)
我以为我还要补充一点。该问题并非特定于Ajax Control Toolkit的TabContainer。实际上,我有一个FormView控件,并且ItemTemplate中的所有子控件都不再被编译器识别为Page的特性并导致编译错误。我不能相信我必须在我的表单中更改所有这些对于findcontrol调用的引用,这只是因为我从Web站点移动到Web应用程序项目。 : - (
答案 1 :(得分:0)
我很想知道你最终的决定是什么来解决这个问题。
阅读您的帖子,与我自己当前的网络应用转换研究相比,让我冒险出去并引荐您访问this页面,希望它可以说明您的代码隐藏文件在转换时会发生什么情况汇编
答案 2 :(得分:0)
您是否通过“转换为Web应用程序...”为所有控件生成设计器文件