2012-10-01 52 views
0

我想在c#中重新打开一个关闭的窗体窗体。如何在c#.NET中打开一个关闭的窗体?

我实际上主动关闭窗体以允许autoIT脚本在不同的Windows应用程序上运行。不过,我想在脚本完成后重新打开相同的表单。

所以......

this.Close(); 
. 
. 
. 
Application.Run(new FormTestPage()); 

但是这给了我,说使用Form.ShowDialogue而不是错误。 我不确定这是如何工作的。 在此先感谢!

+1

你需要重新启动的exe? –

+0

你想关闭它还是隐藏它? –

+0

我想关闭它,因为隐藏它不会让程序转移到脚本的另一个窗体应用程序。我不认为我需要重新启动exe文件?它只是形式而已。 – user1639184

回答

2

如果关闭主窗体和你

var frm = new MainForm(); 
Application.Run(frm); 

然后关闭的主要形式也将关闭应用程序启动的应用程序。像这样开头的应用程序,而不是

var frm = new MainForm(); 
frm.Show(); 
Application.Run(); 

现在,当应用程序关闭,则必须调用Exit(因为它未关闭自动再):

Application.Exit(); 

您可以在主窗体做到这一点在FormClosed事件中,您不仅仅是暂时关闭表单。

现在你可以用normaly重新打开窗体:

var frm = new MainForm(); 
frm.Show(); 
1
var item = new FormTestPage(); 
item.ShowDialog(); 
+0

谢谢。我尝试过这样做,但是我确实看到了弹出窗体的简要图像,但我实际上看不到它。 :S是否有设置或我需要更改的任何内容? – user1639184

+0

可能是您的窗体调用方法'关闭'在ctor或'FormLoad' /'FormShown'事件处理程序 –

相关问题