我有一个窗口窗体正在调用另一个类的方法,需要作为参数传递。
public partial class Form1 : Form
{
private myClass _myClass;
public Form1()
{
InitializeComponent();
_myClass = new myClass(//pass this instance - Form1 - as parameter)
}
}
但我不知道如何将 Form1 实例作为参数传递?我需要这样做,因为这个其他类正在创建系统托盘图标和菜单条,并且能够关闭父窗体。
最佳答案
你只需要做:
_myClass = new myClass(this);
然后更改myClass中的构造函数:
public class myClass
{
private Form1 theForm;
public myClass(Form1 theForm)
{
this.theForm = theForm;
}
...
}
现在您可以从类中访问表单。我想我会避免这样做。尝试让表单负责调用类并确定它何时应该自行关闭。
让类保留对实例化它的表单的引用,并从类中关闭它似乎可能会导致困惑和可维护性问题。
关于c# - 将窗体实例作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20876760/