从类中控制一个PictureBox
本文关键字:一个 PictureBox 控制 | 更新日期: 2023-09-27 18:14:29
我在c#中有一个小项目,(Windows窗体应用程序)。我有在表单77 PictureBoxes (pictureBox1, pictureBox2, pictureBox3,…),我想控制他们,但从一个新的类(Access.cs),通过声明一个新的一个picturebox在类控制所有的图片。
因为如果我遍历每个pictureBox并添加一个click方法,并且每次复制粘贴代码并更改pictureBox编号,那么它就太长了。
我已经将图片设置为公开,并尝试了以下代码:
Access.cs:
using System.Windows.Forms;
public class Access
{
PictureBox picBox = new PictureBox();
public void PictureClicked()
{
picBox.Image = Properties.Resources.apple;
}
}
Form1.cs:
private void pictureBox1_Click(object sender, EventArgs e)
{
Access ac = new Access();
ac.PictureClicked();
}
但是代码不工作!!
我真的不明白你想做什么,但你可以试着把对象发送给你的Access类:
private void pictureBox1_Click(object sender, EventArgs e)
{
Access ac = new Access();
ac.PictureClicked(sender);
}
public void PictureClicked(Object Sender)
{
picBox = (PictureBox)Sender;
picBox.Image = Properties.Resources.apple;
}
Access.Cs
public void pictureBox1_Click(object sender, EventArgs e)
{
PictureBox pi = (PictureBox)sender;
pi.Image = Properties.Resources.alert__2_;
}
Form1.Cs
private void pictureBox2_Click(object sender, EventArgs e)
{
Form1 c =new Form1();
c.pictureBox1_Click(sender, e);
}
这里picturebox2_为所有picturebox点击此事件