私は異なる機能を持つ同じユーザーコントロールを含む5つのWebフォームを用意しています。現在のシステムはMVPパターンに従います。これらのWebフォームはすべて単一の基本クラスから継承されています(次の画像を参照してください)。今、すべてのフォームに共通する特定の条件に対して、それぞれのフォームを個別に無効にする必要があります。だから、フォームの1つにユーザーコントロールの各フィールドを無効にする方法を書いて、うまくいきます。残りのWebフォームには、同じセットのユーザーコントロールが含まれているため、このメソッドを再利用できます。 兄弟内で子クラスメソッドを再利用するソリューション(ASP.NET/VB.NET)
DisableControls()メソッドは、各ユーザーコントロールの()メソッドを呼び出しDisableInputs:
これは、他のWebフォームクラスに複製されるであろう。誰もがこのメソッドを再利用するのに適したソリューションを提案できますか?
それはすべてのフォームから派生する基底クラスに入れて..? – user1429080
ありがとう..コードを説明するために投稿を編集しました。 DisableControls()をBaseClassに配置すると、ユーザーコントロールをパラメータとして渡す必要があります。それ以外の場合は、子クラスのユーザーコントロールに基本クラスからアクセスできません。したがって、共通のユーティリティクラスにDisableControls()メソッドを共有メソッドとして配置する方法と似ています。私が間違っているなら、私を修正してください。 – Watz
右の音、はい。しかし、もしあなたが5つのフォームにすべて 'UserControl1'と' UserControl2'を持っていれば、それらも基本クラスに入れることができます。そしてあなたのメソッドはそれらにアクセスできます。とにかく、同じ構造を持つフォームがさらに増えない限り、これをエンジニアリングしないでください。 – user1429080