有时,当我编辑页面或控件时,.designer文件随着我在页面上添加的新控件而停止更新。我不确定是什么原因导致这种情况发生,但我想知道是否有任何方法强制Visual Studio重新生成.designer文件。我使用Visual Studio 2008
编辑:对不起,我应该注意到我已经试过了:
关闭和重新打开所有文件和Visual Studio 更改页面上的runat="server"控件 删除并重新添加页面指令
有时,当我编辑页面或控件时,.designer文件随着我在页面上添加的新控件而停止更新。我不确定是什么原因导致这种情况发生,但我想知道是否有任何方法强制Visual Studio重新生成.designer文件。我使用Visual Studio 2008
编辑:对不起,我应该注意到我已经试过了:
关闭和重新打开所有文件和Visual Studio 更改页面上的runat="server"控件 删除并重新添加页面指令
当前回答
如果你打开。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文件的提示。
其他回答
这个问题我已经遇到过很多次了,这次又犯了一次。我试着用这些建议来解决问题,但都没用。我终于发现我有'Title'属性在页头两次(我添加到结尾,没有意识到VS添加了一个空白Title=""到开头)——删除额外的属性导致VS2008重新生成设计器文件…我希望VS2010能修复这个问题,让我们知道为什么设计器文件不能生成…
-- 德里克。
我遇到了这个问题,对于我来说,我的一个控件的ID值中有一个空格。我把空间拿出来,设计器文件自己重新生成。
TL,博士; 编辑ASPX页面的@Page指令的Inherits属性并点击保存。您的设计器文件应该重新生成。
确保Inherits = <命名空间>。<class_name> and CodeBehind = <class_name>.aspx.cs
我试图在一个Sharepoint 2010项目上做到这一点,使用VS 2010和TFS,上面的解决方案都不适合我。首先,在VS 2010中使用TFS时,. aspx文件的右键菜单中没有“转换为Web应用程序”选项。
这个回答终于起了作用。我的班级是这样的:
namespace MyProjects.Finance.Pages
{
public partial class FinanceSubmission : WebPartPage
{
protected void Page_Load(object sender, EventArgs e)
{
}
// more code
}
}
我的@Page指令是(为了清楚起见,这里换行):
<%@ Page Language="C#" AutoEventWireup="true"
CodeBehind="FinanceSubmission.aspx.cs"
Inherits="MyProjects.Finance.Pages.FinanceSubmission"
MasterPageFile="~masterurl/default.master" %>
我首先将Inherits更改为MyProjects.Finance。Pages,点击保存,然后改回myprojects。finance。Pages。financessubmit,再点击保存。和要人!重新生成设计器页面!
希望这对使用TFS的人有帮助!
在我的例子中,我只是在顶部缺少了一个寄存器TagPrefix。不知何故,之前的开发工作没有这个在那里?
转换为Web应用程序不为我工作。
删除designer.cs并粘贴空白的designer.cs也不能工作。
但这确实奏效了:
选择所有(default . aspx) 减少 保存即 粘贴 保存即
完成了。生成新的designer.cs。:)