有时,当我编辑页面或控件时,.designer文件随着我在页面上添加的新控件而停止更新。我不确定是什么原因导致这种情况发生,但我想知道是否有任何方法强制Visual Studio重新生成.designer文件。我使用Visual Studio 2008

编辑:对不起,我应该注意到我已经试过了:

关闭和重新打开所有文件和Visual Studio 更改页面上的runat="server"控件 删除并重新添加页面指令


当前回答

如果你在使用Visual Basic 2019时看到这个,并且你点击了“永久删除此文件”确认,你可以从回收站恢复designer.cs文件……它会自动在Visual Basic中重新生成。我就这么做了,找到了我的文件。

其他回答

我有一个问题,当在.ascx文件中声明时,我的新控件不会在设计器文件中生成。问题是我在后面的代码中也声明了它们。因此,删除后面代码中的声明解决了我的问题。

如果你打开。aspx文件,在设计视图和html视图之间切换 返回后会提示VS检查控件并添加任何缺失的控件 设计器文件。

在VS2013-15中,在Project菜单下有一个Convert to Web Application命令。在VS2013之前,这个选项在as(c/p)x文件的右键上下文菜单中可用。完成此操作后,您应该看到您现在有一个*. designer .cs文件可用,并且Design HTML中的控件将可用于控件。

PS:这不应该在调试模式下进行,因为在调试时并非所有内容都要“重新编译”。

有些人还报告了删除。designer.cs文件的成功(先备份。designer.cs文件,然后删除。designer.cs文件)。重新创建同名的空文件。

对于这个答案,有许多评论添加了关于如何最好地重新创建designer.cs文件的提示。

在Visual Studio 2019中,步骤如下:

创建webform1.aspx 复制你的aspx代码并粘贴到webform1.aspx 编译你的项目,你应该在webform1.aspx.designer.cs中有设计器代码 现在你可以复制设计器代码并在你的原始web表单中使用。

我使用以下方法,每次都有效:

在aspx/ascx文件的编辑器中选择所有前面的代码(html标记等)。 削减。 保存。 粘贴。 保存。

编译。

如果更新名称空间而不更新设计器文件中的名称空间,也会发生这种情况。修复:更新设计器文件中的命名空间。