将表单属性访问为静态方法C#

时间:2015-12-02 16:08:01

标签: c#

我想在启动进程时禁用我的表单,并在退出相同进程时启用我的表单。 问题是,当我尝试启用它时,Supervision进入新的EventHandler null

所有这些都是静态方法。

如果有人对这个问题有所了解,我将非常感激:)

这是我的代码:

Process p = new Process();                //I create my process
p.StartInfo.UseShellExecute = true;
p.EnableRaisingEvents = true;
p.StartInfo.FileName = dico[btn.Name];

p.Exited += new EventHandler((_, args) =>     //When the process is exited, I try to enable my Form but Supervision is null
{
     Supervision.ActiveForm.Enabled = true;   //"Supervision" is the name of my form
});
p.Start();

Supervision.ActiveForm.Enabled = false; //I disable my Form when the process is launch

谢谢!!!

1 个答案:

答案 0 :(得分:0)

最后,我找到了一种方法来做我想要的事情:

在同一个函数中,我这样做:

Form form = new Form();
form = Supervision.ActiveForm;

在Exited EventHandler中,我设置了Enabled属性:

form.Enabled = true;

我不知道这是否是做到这一点的好方法,但它的工作!

感谢您的支持!