如何在c#中从另一个形式访问一个对象

本文关键字:访问 一个对象 另一个 | 更新日期: 2023-09-27 18:09:16

假设我有"Form1"answers"Form2",它们都是表单。在Form1中有Main类和Main方法。

在Form1中,我创建了一个对象:

public myobject ob1 = new myobject();

然后,在Form2中,我有这个代码:

 private void bdCancelar_Click(object sender, EventArgs e)
    {
        ob1.status = 1; // I can't access ob1 !!!
    }

有什么帮助吗?

谢谢。

如何在c#中从另一个形式访问一个对象

需要一个Form1的实例。通常,如果您已经显示了这个表单,那么您已经实例化了它(Form1 form1 = new Form1())。然后,您可以对该实例进行操作并访问公共成员:

form1.ob1.status = 1;

另一种可能性是让您的Form2构造函数采用Form1实例:

public class Form2: Form
{
    private readonly Form1 _form1;
    public Form2(Form1 form1)
    {
        _form1 = form1;
    }
    private void bdCancelar_Click(object sender, EventArgs e)
    {
        _form1.ob1.status = 1;
    }
}

,然后当你在Form1的某个地方,想要创建和显示Form2:

var form2 = new Form2(this);
form2.ShowDialog();
相关文章: