Проблема в генерации событий динамически генерируемого Picturebox - PullRequest
1 голос
/ 05 февраля 2010

я сгенерировал Picturebox динамически ... теперь я должен отображать различные изображения на этих полях изображения после этого, когда я нажимаю на конкретное окно изображения, оно должно отображаться в следующем окне Picture Box .... как я знаю щелкнуло конкретное изображение ... и как я могу это сделать ... ответь мне .. Заранее спасибо ..

и моя кодировка

for(int i=0;i<Num_Picbox;i++)
{
    shapes[i].Location = new Point(Left,Top);
    Left += 200;
    Top += i + 0;
    shapes[i].Size = new Size(150, 150);
    shapes[i].BackColor = Color.Black;
    shapes[i].Visible = true;
    shapes[i].BorderStyle = BorderStyle.FixedSingle;
    this.Controls.Add(shapes[i]);

    shapes[i].Click += new EventHandler(PictureBox_Click);                
}


private void PictureBox_Click(object sender, EventArgs e)
{
    int imageid = 1;
    ClsProperty.ImageId = imageid;

    fd2 = new frmImageDisplay(imageid, ClsProperty.ipaddress);
    fd2.Show();
}

Ответы [ 3 ]

3 голосов
/ 05 февраля 2010

«Отправитель» в обработчике событий будет тем графическим окном, по которому щелкнули:

private void PictureBox_Click(object sender, EventArgs e) {

    PictureBox senderAsPictureBox = sender as PictureBox;
    //this is the picture box that got clicked

    int imageid = 1;
    ClsProperty.ImageId = imageid;
    fd2 = new frmImageDisplay(imageid, ClsProperty.ipaddress);
    fd2.Show();
}
0 голосов
/ 05 февраля 2010

Хорошо, я думаю, что это легко, первый аргумент события всегда является отправителем объекта, приведите его к объекту Picture Box и прочитайте свойство ID, и вы сможете двигаться дальше со своей проблемой!

0 голосов
/ 04 февраля 2010

Было бы полезно, если бы вы показали свой код, но в любом случае, если вы динамически создаете графическое окно, вы можете добавить код, например .Click + = имя вашего метода. Это дополнительная справка о динамическом добавлении события в элемент управления при добавлении их

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...