【发布时间】:2011-08-26 03:34:39
【问题描述】:
我目前正在 Visual Studio 2010 Prof. Ed 中为伯克利俱乐部开发一个网站。使用 Asp.net 和 Dotnetnuke v6。这将是我第二次遇到这个特定的问题/麻烦。我创建了一个新控件(ascx 文件)并一直在处理它。我想添加 Dotnetnuke htmleditor,因为它生病了,所以添加了所需的代码。即……
<%@ Register TagPrefix="dnn" TagName="TextEditor" Src="~/controls/TextEditor.ascx"%>
<dnn:TextEditor ID="EmailContent" runat="server" Height="400px" Width="100%" />
我还必须更改 ascs.designer.cs 文件,而不是读取
protected global::System.Web.UI.UserControl EmailContent;
读起来像
protected global::DotNetNuke.UI.UserControls.TextEditor EmailContent;
这使它使用了我想要的 DNN TextEditor。问题是,每当 VS 使用设计器自动生成代码时,它都会用顶行覆盖底行。这意味着每次我更改 ascx 文件时,我都必须再次更改设计器。这已经很烦人了,但我一直无法找到解决它的方法。关于如何为特定控件或自动生成的设计器文件中的代码段禁用 VS 设计器的任何想法?
【问题讨论】:
-
为什么要更改设计器中EmailContent字段的声明?设计器文件是专门为 VS 生成的,千万不要碰它! (你不应该这样做)
-
@Pedro,当出现编译错误或解析错误(使用 aspx/ascx 文件)时,有时设计器代码生成无法正常工作。将建议检查“错误列表”中的错误/警告并尝试尽可能多地修复(尤其是设计错误)。设计器错误不是编译器错误,因此无法运行应用程序。此外,只有在打开相关文件时才会看到设计器错误 - 因此建议同时打开页面 (aspx) 和控件 (ascx) 以查看是否存在与设计器相关的错误/警告。
标签: c# asp.net visual-studio dotnetnuke