0

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

我该怎么做呢?

4

2 回答 2

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 的构造函数。

于 2013-05-11T19:30:07.550 回答
1

您可以在构造函数中将 Form1 PictureBox 作为参数传递给 Logic.cs

例子:

调用 login.cs 时的Form1

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

login.cs辅导员中

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

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

于 2013-05-11T19:36:30.143 回答