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

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

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


当前回答

我遇到了这个问题,对于我来说,我的一个控件的ID值中有一个空格。我把空间拿出来,设计器文件自己重新生成。

其他回答

我经常发现复制/粘贴会导致这种行为。大多数情况下可以通过编辑服务器控件的ID来解决(只需添加一个字符,然后删除它)。

还要记住,在设计器文件中,像重复器这样的控件是不可见的。

是的,在某些情况下,您需要执行上面列出的删除文件的魔法—但是更改名称解决方案在大多数情况下都是有效的。

步骤1:选择所有的aspx代码,剪切[CTRL+X]该代码并保存。 步骤2:再次粘贴相同的代码在同一页,并再次保存

现在你的.desinger页面将会刷新。aspx页面中的所有控件。

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

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

编译。

在Visual Studio 2019中,步骤如下:

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

我知道的唯一方法是删除设计器文件,并将其转换为web应用程序。然而,当你这样做时,它通常会弹出错误,至于为什么它没有自动再生在第一个地方,它通常是一个控制引用,没有在页面头部声明。