私はしばらくの間C#とVisual Studioを使用していなかったので、ウィンドウデザイナーで配列を直接使用する方法があるかどうか思い出せません。誰かがコメントでそれをクリアする必要があります;)。
しかし、おそらく必要なのは、slider1、slider2、slider3、...を宣言する代わりに、slider [0]、slider [1]、...にアクセスできるように配列を使用する必要があります。
このためには、最初に配列を使用するようにフォームのデザインを変更してから、ハンドラーでこの配列にアクセスする必要があります。
配列なし:
private System.Windows.Forms.TrackBar trackBar1;
private System.Windows.Forms.TrackBar trackBar2;
private System.Windows.Forms.TrackBar trackBar3;
[...]
this.trackBar1 = new System.Windows.Forms.TrackBar();
this.trackBar2 = new System.Windows.Forms.TrackBar();
this.trackBar3 = new System.Windows.Forms.TrackBar();
((System.ComponentModel.ISupportInitialize)(this.trackBar1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.trackBar2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.trackBar3)).BeginInit();
this.SuspendLayout();
//
// trackBar1
//
this.trackBar1.Location = new System.Drawing.Point(154, 80);
this.trackBar1.Name = "trackBar1";
this.trackBar1.Size = new System.Drawing.Size(104, 45);
this.trackBar1.TabIndex = 0;
//
// trackBar2
//
this.trackBar2.Location = new System.Drawing.Point(154, 132);
this.trackBar2.Name = "trackBar2";
this.trackBar2.Size = new System.Drawing.Size(104, 45);
this.trackBar2.TabIndex = 1;
//
// trackBar3
//
this.trackBar3.Location = new System.Drawing.Point(154, 184);
this.trackBar3.Name = "trackBar3";
this.trackBar3.Size = new System.Drawing.Size(104, 45);
this.trackBar3.TabIndex = 2;
配列付き:
private System.Windows.Forms.TrackBar[] trackBar = new System.Windows.Forms.TrackBar[3];
[...]
this.SuspendLayout();
for(int n = 0; n < 3; n++) {
this.trackBar[n] = new System.Windows.Forms.TrackBar();
((System.ComponentModel.ISupportInitialize)(this.trackBar[n])).BeginInit();
this.trackBar[n].Location = new System.Drawing.Point(154, 80 + n*52);
this.trackBar[n].Name = "trackBar[" + n + "]";
this.trackBar[n].Size = new System.Drawing.Size(104, 45);
this.trackBar[n].TabIndex = 0;
}
次に、trackBar[x]を介してすべてのトラックバーにアクセスできます。宣言とforループの3を、必要な定数または変数に変更できます。