[英]c# extended control in designer
我像这样扩展了控件
public partial class NewControl : OriginalControl
{
public NewControl()
{
}
}
并从以下位置更改了MyForm.Designer.cs中的这些行
private OriginalControl control1;
this.control1 = new OriginalControl();
至
private NewControl control1;
this.control1 = new NewControl();
但是,当我在设计器中打开表单时,却遇到此错误:
无法加载设计器。 检查源代码中的语法错误,并检查是否所有引用均可用。
ICSharpCode.FormsDesigner.FormsDesignerLoadException:System.ComponentModel.Design.Serialization.CodeDomSerializerException:找不到类型'NewControl'。 请确保引用了包含此类型的程序集。 如果此类型是开发项目的一部分,请确保已使用当前平台或任何CPU的设置成功构建了该项目。 在System.ComponentModel.Design.S。 System.ComponentModel.Design.Serialization.CodeDomSerializer.Deserialize(IDesignerSerializationManager管理器,Object codeObject)处的ICSharpCode.FormsDesigner.Services.ProjectResourcesComponentManager System.Windows.Forms.Design.ControlCodeDomSerializer.Deserialize(IDesignerSerializationManager管理器,Object codeObject)位于ICSharpCode.FormsDesigner.Services.ProjectResourcesComponentCodeDomSerializer.Deserialize(IDesignerSeriali zationManager管理器,位于System.ComponentModel.Design.Serialization.TypeCodeDomSerializer.DeserializeName(IDesignerSerializationManager管理器,字符串名称,CodeStatementCollection语句)处的Object codeObject)
System.ComponentModel.Design.Serialization.CodeDomSerializerException:变量'control1'未声明或从未分配。 在System.ComponentModel.Design.S。 System.ComponentModel.Design.Serialization.CodeDomSerializerBase.DeserializeStatement(IDesignerSerializationManager管理器,CodeStatement语句)上的.Serialization.CodeDomSerializerBase.DeserializeExpression(IDesignerSerializationManager管理器,字符串名称,CodeExpression表达式)
在ICSharpCode.FormsDesigner.FormsDesignerViewContent.LoadDesigner()
ICSharpCode.SharpDevelop.Gui.AbstractViewContentHandlingLoadErrors.Load(OpenedFile文件,流流)的ICSharpCode.FormsDesigner.FormsDesigner.FormsDesignerViewContent.LoadInternal(OpenedFile文件,流流)的ICSharpCode.FormsDesigner.FormsDesignerViewContent.LoadAndDisplayDesigner()
我怎么会错误地扩展控制?
这可能纯粹是出现这两个控件的名称空间的问题。 查看是否有完全合格的班级名称解决您的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.