从另一个对象方法调用窗体方法



我试图通过引用传递Form,但它给出了:

"Form"不包含的定义,也找不到接受"Form"类型的第一个参数的扩展方法(是否缺少using指令或程序集引用?(

这是代码:

public class Foo
{
public void FooVoid()
{
Form1.FormVoid();
}
}
public void FormVoid()
{
}
public Program()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}

声明一个类范围的变量,并在加载事件/构造函数调用中引用您的主窗体。这不是最佳实践,但您不会提供太多关于您试图实现的内容的信息。。

public static Form1 form;
public class Foo
{
public void FooVoid()
{
//Form1.FormVoid();
//Then you have a reference to your Form1 and can call the method like this
Form1.form.FormVoid()
}
}
public void FormVoid()
{
}
public Program()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
form = this;
}

最新更新