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

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

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


当前回答

我知道这是一个老话题,但我只是想补充一个还没有被建议的解决方案。

我在一个资源文件上遇到了同样的问题。我在Visual Studio外编辑它,设计器文件没有正确更新。

重命名文件可以重新生成Designer文件。我只是重新命名为最初的名称,这工作得很好!

其他回答

我的经验是,如果你想做这篇文章,如上所述。

你的标记文件(aspx/ascx)必须包含CodeBehind="MyPage.aspx.cs"属性,否则它将不起作用。我在这里写过博客。

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

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

编译。

我知道我来晚了,但我想,如果在尝试了@Glenn Slaven的公认答案和@Espo目前评分最高的答案后,你仍然不走运,下面的答案可能会为一些人省去一些麻烦。

用户控件(.ascx)总是停止自动生成。我发现在我的用户控件中使用其他用户控件的实例中,它破坏了自动生成。

我提出的解决方案是使用我们都知道的技巧,当使用来自外部源的CSS类时,让智能感知在用户控件或皮肤文件中工作。现在我不只是引用CSS文件,而是注册我需要的其他用户控件。它看起来是这样的:

<% If False Then %>
<%@ Register TagPrefix="uc" TagName="Title" Src="~/controls/title.ascx" %>
<link rel="stylesheet" type="text/css" href="../css/common.css"  />
<% End If %>

之后,保存文件,这将提示自动生成程序重新生成,然后我就重新启动并运行了。

这就是我的经历, 在解决方案资源管理器中选择网站文件夹,右键单击,为将生成设计器文件的所有aspx文件选择转换为Web应用程序。

萨米尔

如果您像我一样,将旧的. aspx文件添加到最近的项目中。 您可能会忘记页面上使用的一些控件。

如果是这样,首先,如果你安装了多个文件; 一次只修复一个。

编译时,修复生成的错误。它们可能是一样的 所有文件中的错误。

接下来,如果您有设计器文件,请删除所有插入的设计器文件。 接下来,确保在编译时没有任何其他错误,除了 设计器文件。

最后右键单击您的web项目,然后单击“转换为web应用程序”。 这将插入您需要的设计器文件。

这些绝对是解决问题的最佳步骤。