我知道标题含糊不清,抱歉我想不出更好的方法来标题:
我之前曾多次发生这种情况;当我从asp .net页面复制代码并将其粘贴到另一个页面时,在页面后面的代码中没有识别出任何控件。我试图构建/重建页面,但我看不到控件(在intellesense中),并且构建失败。我复制代码后,也不会看到我从工具箱中拖放的任何控件......
我认为它与那些自动生成的设计器文件有关,这些文件说不要弄乱它们,但应该有一种方法“教”项目控件而不必从头开始;我的意思是我从不使用代码片段来控制,但如果我做了???
感谢您对此提出的任何建议。我正在使用VS 2008 Professional BTW。
答案 0 :(得分:1)
如果您正在尝试复制标记(aspx,而不是aspx.cs),那么您可以尝试切换到设计视图并剪切和粘贴它。这样它就会更新神秘的设计师文件(你可以搞乱这个,试试看看会发生什么)。 :)
答案 1 :(得分:0)
有一个设置可以关闭选项下的自动生成控件ID。多数民众赞成你要找的......
答案 2 :(得分:0)
确保设置CodeBehind和Inherits Page标签的元素 <%@ Page ....%> 到(.cs)文件后面的代码。
答案 3 :(得分:0)
我注意到这种情况有时会发生。粘贴后尝试从标记切换到设计模式。
答案 4 :(得分:0)
除非您复制的标记无效,否则Visual Studio 应自动更新.designer.cs
文件。如果没有,右键单击项目并选择“转换为Web应用程序”(是的,它甚至可用于Web应用程序)可能执行操作。不是一个非常干净/可解释的解决方案,但它已经为我工作了几次。
答案 5 :(得分:0)
当然,当您将html代码粘贴到另一个页面时,控件ID将会更改(除非您在选项中将其关闭)。这是显而易见的检查。
如果排除命名问题,则可能是VS的问题。出于某种神秘的原因,有时VS在粘贴到aspx后不会更新设计器文件。我也遇到了这个令人沮丧的问题。您需要做的是重新生成设计器文件:
删除设计器文件,然后右键单击aspx文件并选择“转换为Web应用程序”。应该这样做。