byQuince Ответов: 1

Щелкнул один из получившихся графических ящиков. Я хочу знать, какой из них нажат. Я хочу знать значение" я " рабочего, когда щелчок будет сделан.




for (int i = 0; i < 3; i++)
 {
     worker[i] = new PictureBox();
     worker[i].Name = "isci-" + i.ToString();
     worker[i].Location = new Point(10 + i, 20);
     worker[i].ImageLocation = "D:\\Proje Resim\\Folder.PNG";
     worker[i].Width = 150;
     worker[i].Height = 120;
     worker[i].Visible = true;
     worker[i].BackColor = Color.Transparent;
     worker[i].SizeMode = PictureBoxSizeMode.StretchImage;

     flowLayoutVideo.Controls.Add(worker[i]);
     worker[i].DoubleClick += new EventHandler(workerStart_Click);


Что я уже пробовал:

Щелкнул один из получившихся графических ящиков. Я хочу знать, какой из них нажат. Я хочу знать значение" я " рабочего, когда щелчок будет сделан. Помогите мне, пожалуйста.

1 Ответов

Рейтинг:
0

OriginalGriff

Самый простой способ-использовать свойство Tag PictureBox (все производные классы элементов управления имеют свойство Tag) и установить его в значение i:

worker[i] = new PictureBox();
worker[i].Tag = i;
worker[i].Name = "isci-" + i.ToString();
Затем в обработчике щелчка:
void allPictureBoxes_Click(object sender, EventArgs e)
    {
    PictureBox p = sender as PictureBox;
    if (p != null)
        {
        int i = (int) p.Tag;
        ...
        }
    }


byQuince

Огромное спасибо!. Желаю вам успехов в жизни :))

OriginalGriff

Пожалуйста!

byQuince

проблема решена