“WindowsFormsApplication1.frmMain”的部分声明不得指定不同的基类

时间:2012-11-26 13:16:10

标签: c# winforms forms

我正在研究WinForm项目。 在项目中我有两个表格frmGeneric和frmMain。 他们吝啬这个:

namespace WindowsFormsApplication1
{
   public partial class frmGeneric
   {
   }
 }


namespace WindowsFormsApplication1
{
   partial class frmMain:frmGeneric  
   {
   }
}

即frmMain派生自frmGeneric。

在这一行:

partial class frmMain:frmGeneric 

我收到此错误:

  

'WindowsFormsApplication1.frmMain'的部分声明不得指定不同的基类C:... \ WindowsFormsApplication1 \ Form1.Designer.cs

任何想法为什么我会收到此错误以及如何解决此问题?

1 个答案:

答案 0 :(得分:2)

查看C:...\WindowsFormsApplication1\Form1.Designer.cs课程。它包含frmMain类定义的另一部分,它似乎也指定了一个基类,它是另一个而不是frmGeneric

对于部分类,您只能在一个部分中指定基类,或者在其他部分中必须是相同的基类。因为它仍然可以编译到一个类中,所以不能从多个类继承。

出于同样的原因,你不能拥有:

class Form2 : Form1, Form { ... }

你也不能拥有:

partial class Form2 : Form1 { ... } // File 1
partial class Form2 : Form { ... } // File 2

确保不是这种情况,即(带有您的班级名称):

// File 1 (Form1.cs, probably)
partial class frmMain : frmGeneric { ... }

// File 2 (Form1.designer.cs)
partial class frmMain : frmGeneric { ... }

或:

// File 1 (Form1.cs, probably)
partial class frmMain : frmGeneric { ... }

// File 2 (Form1.designer.cs)
partial class frmMain { ... }