我正在尝试创建一个从表单继承的表单。基类名为Window
,它继承自MetroForm
,这是我已下载并安装在项目中的NuGet包。此表单在Designer中加载时没有问题。
public partial class Window : MetroForm
{
public WindowType windowType { get; }
public Engine engine { get; }
public Window(WindowType windowType, Engine engine)
{
InitializeComponent();
this.windowType = windowType;
this.engine = engine;
}
}
子表单的声明和构造如下:
public partial class GraphicsWindow : Window
{
public GraphicsWindow(WindowType windowType, Engine engine) : base(windowType, engine)
{
InitializeComponent();
}
}
它在设计器窗口中抛出以下错误:
"类型' DispatcherDesk.Windows.Window'上的构造函数没找到。"
我发现多个线程在完全相同的情况下解决了这个错误,但没有一个解决方案适合我。我尝试在父表单和子表单中添加无参数构造函数,向其添加InitializeComponent();
次调用,并使用[Obsolete]
属性和private
访问修饰符。我还尝试重建解决方案并在每一步重新启动Visual Studio。
我现在能够想到的是,这些解决方案在VS2017中不再有效,但我不知道为什么。提前感谢您的任何答案!