C # Как объединить событие щелчка Picturebox с соответствующей функцией? - PullRequest
0 голосов
/ 06 марта 2019

C # Как объединить событие щелчка Picturebox с соответствующей функцией?

private void pbx_process(int i) 
{ 
   PictureBox picture_box 
      = this.Controls.Find("pbx_image" + i, true).FirstOrDefault() 
        as PictureBox; 
   if (picture_box.Image != null) pbx_image.Image = picture_box.Image; 
   else pbx_image.Image = null; 
} 

private void pbx_image1_Click(object sender, EventArgs e) 
{ 
    pbx_process(1); 
}

private void pbx_image2_Click(object sender, EventArgs e) 
{ 
    pbx_process(2); 
}

private void pbx_image3_Click(object sender, EventArgs e) 
{ 
    pbx_process(3); 
}

Я хочу сделать это просто.Пожалуйста, помогите ....

1 Ответ

0 голосов
/ 06 марта 2019

создайте функцию, подобную этой

AddEvent()
{
pbx_image1.click+=pbx_image_Click;
pbx_image2.click+=pbx_image_Click;
pbx_image3.click+=pbx_image_Click;
}

затем

private void pbx_image_Click(object sender, EventArgs e) 
{ 

    pbx_process(sender as PictureBox); or you can do the process right here
}

, а затем

private void pbx_process(PictureBox pictureBox) 
{ 

   if (pictureBox.Image != null) pbx_image.Image = pictureBox.Image; 
   else pbx_image.Image = null; 
} 

не забудьте вызвать функцию AddEvent после загрузки формы для добавления событий в графические блоки.

...