0

以前に基本クラスで初期化されたオブジェクトがあります。継承されたクラスでは、このオブジェクトを使用して、マルチプロパティの値を割り当てます。例:

this.Chart.X = 10;
this.Chart.Y = 10;
this.Chart.Width = 20;
this.Chart.Height = 20;
this.Chart.Background = Color.Red;

ただし、「this.Chart」を何度も繰り返す必要があります。これを回避する方法。基本クラスでは、いくつかの一般的な値で初期化されているため、このオブジェクトを再作成したくないことに注意してください。

ありがとう。

4

3 に答える 3

2

タイピングを節約したいのであれば、それを行う関数を書くことができます。

static void InitializeChart(Chart c) {
  c.X = 10;  
  c.Y = 10;  
  c.Width = 20;  
  c.Height = 20;  
  c.Background = Color.Red; 
}

または、チャートをローカル変数に割り当てるだけです。

  var c = this.Chart;
  c.X = 10;  
  c.Y = 10;  
  c.Width = 20;  
  c.Height = 20;  
  c.Background = Color.Red;

基本クラスを制御できる場合の別のアプローチは、いくつかの初期化パラメーターを提供し、チャートを作成するときにプロパティを適切な値に設定することです。

于 2012-06-05T04:36:39.287 に答える
1

流暢なインターフェースChartを実装するための一連の拡張メソッドを作成できます。繰り返されるコードの一部が削除されるため、例は次のようになります。

this.Chart.X(10).Y(10).Width(20).Height(20).Background(Color.Red);

そして、あなたも必要ありませんthis

于 2012-06-05T04:38:04.763 に答える
-1

次のようにフィールド初期化子を使用できます。

this.chart = new Chart {X = 10, Y = 10, Width = 20, Height = 20, Background = Color.Red};

this.chart.X = 何とか、this.chart.Y = 何とか...

于 2012-06-05T04:23:15.977 に答える