如何从另一个类访问表单上的图片框?

时间:2013-05-11 19:26:33

标签: c# winforms picturebox

我的表单(Form1)有一个图片框,我需要从另一个类(Logic.cs)访问。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

你应该为它写一个公共财产。

假设您的图片框名为pictureBox1,请在form1:

中写入此属性
public PictureBox MyPictureBox
{
    get
    {
        return pictureBox1;
    }
}

从其他课程内部,您需要参考表格。如果它被称为myForm,您将以myForm.MyPictureBox;

的形式访问图片框

如果您的Logic类没有对表单的引用,则需要提供它。如果创建Logic类的类也创建了表单,则它可以传递对Logic类的引用。

如果您的Logic类需要PictureBox,将PictureBox传递给它而不是整个表单会更好。

类似于:Logic logic = new Logic(form1.MyPictureBox);

这样只有PictureBox部分才会传递给Logic的构造函数。

答案 1 :(得分:1)

您可以将Form1 PictureBox作为参数传递给构造函数

中的Logic.cs

示例:

当你调用login.cs

时,

Form1

login t = new test(this.pictureBox1);
t.Show();
login.cs counstructor

中的

    PictureBox s;
    public login(PictureBox p)
    {
        InitializeComponent();
        s = p;
    }

你可以在login.cs中创建一个图片框并将其传递给From1