Or *_*lel 3 c# methods static winforms
我的 Form.cs 中有一个函数,我想在我的 program.cs 中调用它
但是如果函数不是静态的,program.cs 就不能使用了。如果它是静态的,Form.cs 就不能使用它,因为它涉及非静态的控件。
我可以删除我的 program.cs 代码并找到一种在 form.cs 中执行相同操作的方法,但我想知道是否有更简单的方法。
这通常是 form.cs 中的函数所做的
public void Toggle()
{
MyDomainUpDown.SelectedIndex = 3;
}
Run Code Online (Sandbox Code Playgroud)
程序.cs:
MainForm.Toggle();
Run Code Online (Sandbox Code Playgroud)
为什么你不能从你的 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);
}
}
Run Code Online (Sandbox Code Playgroud)