C# - 标记自定义Form的基类使Design View显示HTML

好吧。我有一个带有几个对话框的应用程序,这些对话框有一些事件,它们都以相同的方式响应,并且它们都有一些方法可以提供给Presenter。这些都被推到了:  公共抽象类BaseFormClass:Form 所有其他形式是:  公共类DerivedFormClass:BaseFormClass 我有一个模型 - 视图 - 演示者设置,所以基类有一些受保护的EventHandler< EventArgs>,并且每个都是一个类似命名的函数,它被分配为该事件调用,并且存在一个setter演示者可以指定它自己的函数来用作事件的处理程序。 (换一种说法:)
protected void OnFormBeginClosing(object sender, FormClosingEventArgs e)
{
    if (formClosing == null)
        return;

    formClosing(sender, e);
}

public EventHandler OnFormClose
{
    set
    {
        formClosing = value;
    }
}

protected EventHander<EventArgs> formClosing;
然后,演示者使用OnFormClose setter设置它自己的处理函数来处理任何必要的清理或任何必要的清理。 既然背景故事已经不在了,那么主要的问题是,为什么当我将父表单标记为抽象的简单更改时,我的子表单的设计视图从正常的设计视图变为只是吐出一堆乱七八糟的东西。 HTML(好吧,不是一堆乱七八糟的东西,似乎是表格的整个HTML ......)? 任何人都可以建议我可能做错了吗?     
已邀请:
我以前从未尝试过这个,但在Visual Studio 2010中尝试相同,我得到错误
The designer must create an instance of type 'WinFormsTestApp.FormA' but it cannot because the type is declared as abstract.
我怀疑这意味着它所说的 - 为了显示你的派生形式,由于某种原因只知道它自己,设计师需要创建一个父形式的实例,显然不能这样做。抱歉,您可能需要重新设计层次结构。 VS设计者对用于表单和控件的继承模式做了很多假设,所以如果你偏离标准模式,这些问题就很常见了。     

要回复问题请先登录注册