如何获取表单程序的参数?
Posted
技术标签:
【中文标题】如何获取表单程序的参数?【英文标题】:How can I get args of Form program? 【发布时间】:2011-06-14 09:21:20 【问题描述】:在控制台应用程序中我可以使用args[]
但是表单应用程序呢?
【问题讨论】:
【参考方案1】:当您在 C# 中创建 WinForm 应用程序时,编辑器会为您创建一个 Program.cs 文件。这是 main 所在的位置,也是参数可用的位置。
由于缺乏更好的术语,这有点 IDE“魔法”。仍然有一个“主要”功能,它只是启动您的主要表单的一个实例以及您需要的任何其他内容。打开该文件并查看。
【讨论】:
【参考方案2】:您需要更改表单构造函数以接受 args 参数。
例如:
public void Form1(string[] args)
【讨论】:
stefan 的回答也是正确的。您是否将 args 传递给应用程序或表单? 接受 args 的是 Main()-entry,而不是 Form。【参考方案3】:一种简单的方法:
string[] args = Environment.GetCommandLineArgs();
或者,您可以更改 Main-call 以包含参数(在 Program.cs 中):
static void Main(string[] args)
然后您需要将其传递到您的表单中,并相应地更改表单的构造函数(假设您需要args
):
public Form1(string[] args)
【讨论】:
第一个效果很好!我还发现最好检测它是否有超过 1 个参数,然后在索引 1 处获取一个。 太棒了。 :) 我经常使用 Nini 进行配置读取和命令行解析:nini.sourceforge.net 看起来很有趣 :) 好像它已经死了,更新是在 2010 年... :/ 没错,但它仍然很好用(到目前为止我还没有找到任何好的替代品)。也有人在 NuGet 中放了一份副本。以上是关于如何获取表单程序的参数?的主要内容,如果未能解决你的问题,请参考以下文章