从 class 获取 Form1 属性

Get Form1 properties from class

我希望能够从 class 中获取 Form1 属性。 Width、Left、WindowState 等属性。这样我就可以在 class 中执行此操作: MessageBox.Show(Form1.Width); 所以我想引用整个 Form1。我如何在代码中做到这一点?

示例 1: 将实例存储在全局变量中,

public static Form1 frm1;


//Form1 constructor
frm1 = this;

例如

public static Form1 frm1;

public Form1()
{
    InitializeComponent();
    frm1 = this;
    
    MessageBox.Show(Form1.frm1.Width.ToString());
}


示例 2: 您需要将实例传递给 class。
public class Class1
{
    private Form1 _frm1;
    public Class1(Form1 frm1)
    {
        this._frm1 = frm1;
    }
}

例如

public class Class1
{
    private Form1 _frm1;
    public Class1(Form1 frm1)
    {
        this._frm1 = frm1;
        MessageBox.Show(this._frm1.Width.ToString());
    }
}