1

ドロップダウン/テキストボックス/グリッドビューなどのユーザーコントロールがあるとしましょう。これらはすべて、1つのパラメーター(またはいくつかのパラメーター)によって制御されます。

ユーザーコントロールをページに追加して、次のように設定するとします。

userControl1.Type = Advanced;

または

userControl1.Type = Regular;

次に、複数の場所でのユーザーコントロールに次のようなものがあります。

    if Type ==Advanced
    gridview.DataSource=dataTableAdvanced;
    else if Type==Regular
    gridview.DataSource = dataTableRegular;

または次のようなもの:

if Type==Advanced
dropdown1.Visible=true
else
dropdown1.Visible=false

パラメータを使用すると、コントロールがすぐに乱雑になります。たとえば、5つの異なる値を使用できます。これを行うためのより良いテクニックはありますか?

4

2 に答える 2

4

Advancedコントロールは、Regularコントロールから派生し、依存オブジェクトを設定するメソッドをオーバーライドできます。

class RegularControl
{
   public virtual void SetStuff() { //visible, data source, etc }
}
class AdvancedControl: RegularControl
{
   public override void SetStuff() { // same deal }
}
于 2012-06-15T18:27:03.413 に答える
1

本当に2つのコントロールが必要なようです。1つはアドバンスト、もう1つはレギュラーです。

于 2012-06-15T18:25:56.120 に答える