私はすべてのユーザーコントロールに共通の部分をいくつか持っています。それはインターフェイスで定義されています、例えばMyInterfaceです。継承を使用してユーザーコントロールの共通部分を実装する方法は?
その後、私はクラスでその一部を実装し、MyBaseClassを言う:私は、ユーザーコントロールを作成するときに
class MyBaseClass : MyInterface
{
//......
}
はその後、私は、このユーザーコントロールにしたい共通部分の実装を持っています。だから、私はMyControlのコードを次のように変更したいと考えています:
public partial class MyControl : UserControl, MyBaseClass
{
public MyControl()
{
InitializeComponent();
}
}
システムでエラーが発生します。理由:Mybaseは部分クラスではありません。 MyBaseClassを部分的に変更する場合は、erroが "mutiple base classを許可しない"のようなものを取得します。
一つの解決策は、
public partial class MyUserControl : UserControl, MyInterface
{
public MyUserControl()
{
InitializeComponent();
}
}
のようですが、これは、各ユーザーコントロールの重複実装が発生します。多くのコピー&ペースト。私はこのようにしたくない。
次のようにしようとしました:私はエラーを得た
public class MyBaseClass : UserControl, MyInterface
または
public partial class MyBaseClass : UserControl, MyInterface
: 'をMyUserControl' の 部分的な宣言は、この問題をresoveする方法別の基本クラスに
を指定してはなりませんか?
C#の多重継承をサポートしていません...あなたが試すことができますすべてがUserControlから継承し、いくつかのBaseUesrControl、共通のコードを配置することであり、このベースから継承より。 –