VS2017在WinForms Designer中找不到类型的构造函数

时间:2017-11-23 22:21:33

标签: c# winforms inheritance constructor

我正在尝试创建一个从表单继承的表单。基类名为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中不再有效,但我不知道为什么。提前感谢您的任何答案!

0 个答案:

没有答案