の配列を初期化していますPictureBox
。問題は、それぞれに個人EventHandler
を追加することはできません。forループにこのコードがあります:
picBoxs[i] = new PictureBox();
picBoxs[i].Anchor = AnchorStyles.None;
picBoxs[i].Location = new Point(x, y);
picBoxs[i].Size = new Size(104, 104);
picBoxs[i].SizeMode = PictureBoxSizeMode.Normal;
picBoxs[i].BorderStyle = BorderStyle.FixedSingle;
//this.picBoxs[i].Click += new System.EventHandler(this.picBoxs_Click); //Single EventHandler for all PictureBox(s)
this.picBoxs[i].Click += new System.EventHandler(this.picBoxs[i]_Click); //Generates error
picBoxs1_Click()
、picBoxs2_Click()
、picBoxs3_Click()
...(など) が必要です。EventHandler
それぞれが必要だからPictureBox
です。問題なく一般EventHandler
化できますが、これを行うと、すべてのメソッドが取得され、別のをクリックした後に別のものを実行できません。どんなアイデアでも大歓迎です。picBox_Click()
PictureBox
PictureBox
前もって感謝します...
編集: PictureBox をクリックすると、メッセージ ボックスが表示され、2D 配列のインデックスが表示されます。私のピクチャボックスが次のように配置されているとします:
picBox0 picBox1 picBox2
picBox3 picBox4 picBox5
picBox2 をクリックした後: MessageBox は "[0][2]" と表示され、picBox4 をクリックした場合と同じ: MessageBox は "[1][1]" と表示されます...