CodeGo.net>一个连接Program.cs和Form.cs

我的Form.cs中有一个函数要在program.cs中调用

但是,如果该函数不是静态的,则program.cs将无法使用它.而且,如果它是静态的,则Form.cs不能使用它,因为它涉及的不是静态的控件.

我可以删除program.cs代码,并在form.cs中找到一种方法来做同样的事情,但是我想知道是否有更简单的方法.

通常这就是form.cs中的功能

public void Toggle()
    {
        MyDomainUpDown.SelectedIndex = 3;
    }

该program.cs:

MainForm.Toggle();

解决方法:

为什么不能从program.cs访问它?

您可以轻松定义一个变量来保存表单,然后引用它:

static class Program
{
    // Any method can now access the form
    static Form1 MyForm;

    [STAThread]
    static void Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        MyForm = new Form1();
        Application.Run(MyForm);
    }

}
上一篇:为什么此代码粘贴到DataGridView这么慢?


下一篇:C#在光标处获取控制权