有时,当我编辑页面或控件时,.designer文件随着我在页面上添加的新控件而停止更新。我不确定是什么原因导致这种情况发生,但我想知道是否有任何方法强制Visual Studio重新生成.designer文件。我使用Visual Studio 2008
编辑:对不起,我应该注意到我已经试过了:
关闭和重新打开所有文件和Visual Studio 更改页面上的runat="server"控件 删除并重新添加页面指令
有时,当我编辑页面或控件时,.designer文件随着我在页面上添加的新控件而停止更新。我不确定是什么原因导致这种情况发生,但我想知道是否有任何方法强制Visual Studio重新生成.designer文件。我使用Visual Studio 2008
编辑:对不起,我应该注意到我已经试过了:
关闭和重新打开所有文件和Visual Studio 更改页面上的runat="server"控件 删除并重新添加页面指令
当前回答
删除designer.cs文件,然后右键单击。aspx文件,选择“转换为Web应用程序”。如果控件声明有问题,比如标签格式不正确,您将得到一条错误消息,在visual studio成功地重新生成设计器文件之前,您将需要纠正格式错误的标签。
在我的例子中,在这一点上,我发现问题是我声明了一个按钮控件,它不在一个带有runat="server"属性的表单标记中。
其他回答
最近我发现我也有同样的问题。Visual Studio 2010拒绝更新设计器文件。
事实证明,VS不会为使用CodeFile(页面运行)而不是CodeBehind (DLL)的页面修改设计器文件。无论你关闭VS、重新加载项目、重新创建控件或修改文件多少次,这都是正确的。没有什么会提示VS重新生成设计器。这就好像它没有为CodeFile页面创建设计器文件,但确实要求它存在。
我把它改成了CodeBehind并保存了页面。设计器文件立即更新。然后我把它改回来,一切都还是金色的。这种行为在VS 2010 / . net 4.0中似乎是新的,因为VS 2008在默认情况下没有出现这种情况。
就是这一部分:
<%@ Page Language="vb" AutoEventWireup="false" CodeFile="YourPage.aspx.vb" Inherits="YourPageClass" %>
将CodeFile更改为CodeBehind,保存,然后恢复。
我知道这是一个老话题,但我只是想补充一个还没有被建议的解决方案。
我在一个资源文件上遇到了同样的问题。我在Visual Studio外编辑它,设计器文件没有正确更新。
重命名文件可以重新生成Designer文件。我只是重新命名为最初的名称,这工作得很好!
如果更新名称空间而不更新设计器文件中的名称空间,也会发生这种情况。修复:更新设计器文件中的命名空间。
转换为Web应用程序不为我工作。
删除designer.cs并粘贴空白的designer.cs也不能工作。
但这确实奏效了:
选择所有(default . aspx) 减少 保存即 粘贴 保存即
完成了。生成新的designer.cs。:)
删除designer.cs文件,然后右键单击。aspx文件,选择“转换为Web应用程序”。如果控件声明有问题,比如标签格式不正确,您将得到一条错误消息,在visual studio成功地重新生成设计器文件之前,您将需要纠正格式错误的标签。
在我的例子中,在这一点上,我发现问题是我声明了一个按钮控件,它不在一个带有runat="server"属性的表单标记中。