Shd*_*dNx 9 c# visual-inheritance visual-studio-2010-beta-1 winforms
我在C#应用程序中有几种形式.我使用Visual Studio 2010 Beta,但是使用.NET 3.5和C#3.
我有一个基本形式,在Shd命名空间中称为FilteredQueryViewForm,我想要一些其他形式来继承它(因为它们基本上会做同样的事情,但有一些补充).
我在FilteredQueryViewForm类中将内容从private更改为protected,因此可以从派生表单中访问它们.在此之后,我创建了一个派生表单,并将基类设置为FilteredQueryViewForm.
派生类的设计者抱怨Shd.FilteredQueryViewForm没有任何构造函数......不管它有一个具有3个参数的事实.我认为参数可能是一个问题,所以我也创建了一个没有参数的(公共的,当然)构造函数,但它仍然不起作用.错误消息是相同的:
"找不到类型'Shd.FilteredQueryViewForm'的构造函数."
并且派生类的设计者不会加载.我已经尝试重新启动vs2010beta,重新创建派生表单,但似乎没有任何帮助.谷歌在这个问题上没有给我带来任何有用的结果.:(
这是Visual Studio 2010 Beta的问题吗?或者我做错了什么?
Emi*_*elt 22
您将需要一个没有参数的构造函数,这些构造函数在每个表单中调用InitializeComponent()方法.然后关闭设计器窗口,重建解决方案并尝试重新打开设计器.这应该工作.重建解决方案至关重要.
问题是,如果你创建一个继承自Shd.FilteredQueryViewForm的表单,设计器将尝试调用父表单的构造函数,但它不是从代码加载这个表单,而是从它的构建程序集加载.