我正在开发一个基于表单的程序,但我被要求添加一些命令行支持,除了表单闪烁之外,这种方法还可以正常工作,并在从命令行运行时关闭。无论如何在命令行运行时隐藏表单?有些代码确实引用了控件,因此gui需要可访问但不可见,这是否可行?
答案 0 :(得分:3)
在Main方法中,您可以创建如下表单:
main = new MainForm();
然后执行所需的任何命令行处理。
当不在命令行模式时,只需调用:
Application.Run(main);
答案 1 :(得分:1)
我遇到的一些应用程序正是从表单类的构造函数中获得此行为的。基本上,当命令行args的进程成功完成时,它们的构造函数处理命令行参数并调用Environment.Exit(0)。在表单类的构造函数完成之前调用Environment.Exit有效地防止表单出现。
话虽如此,它容易出错,而且我会说没有将表单类作为应用程序的启动。使用另一个类,它可以根据需要实例化并显示表单,或者代之以处理命令行参数。