我有以下代码
namespace Spaceship_Invaders
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
Image myImage = Image.FromFile("image/Untitled.png");
pictureBox1.Image = myImage;
}
public class spaceship {
Image myimage = Image.FromFile("image/Untitled6.png");
Form1 myform = new Form1();
myform.pictureBox1.Image = myimage;
}
}
}
我在表格中有一个图片框,我想从班级飞船上访问图片框,但我无法访问它。怎么做?
答案 0 :(得分:1)
[已编辑] 您可以通过以下方式访问它:
public class spaceship
{
Image myimage = Image.FromFile("image/Untitled6.png");
Form1 myform = new Form1();
spaceship()
{
myform.pictureBox1.Image = myimage;
}
}
答案 1 :(得分:0)
而不是取消unsing公共字段而不是创建一个公共属性From1.TheImage来将图像设置为PictureBox。
这允许您在必要时实现检查,跨线程安全性,并在不更改SpaceShip类的情况下将PictureBox与其他内容交换。
阅读这篇文章:SO public fields/properties以了解将字段公开的风险。
public partial class Form1 : Form
{
public Image MyImage
{
get { return pictureBox1.Image; }
set {
//do some checks if neccessary
pictureBox1.Image = value;
}
}
public Form1()
{
InitializeComponent();
}
}