C# application.run之后在windows窗体上调用公共方法
我有一个windows窗体,通常作为计划任务运行,因此我的想法是在任务中传入命令参数,使其自动运行。这样,我就可以在本地运行它,而无需参数,以便在必要时手动运行它。但我不太确定如何让它在调用Application.Run之后调用新表单的方法,当它作为任务运行时运行。现在它只是显示表单并退出,而不是继续执行i.RunImport()行。有什么想法吗?这是我的密码。谢谢C# application.run之后在windows窗体上调用公共方法,c#,winforms,C#,Winforms,我有一个windows窗体,通常作为计划任务运行,因此我的想法是在任务中传入命令参数,使其自动运行。这样,我就可以在本地运行它,而无需参数,以便在必要时手动运行它。但我不太确定如何让它在调用Application.Run之后调用新表单的方法,当它作为任务运行时运行。现在它只是显示表单并退出,而不是继续执行i.RunImport()行。有什么想法吗?这是我的密码。谢谢 static void Main(string[] args) { Application.EnableVisualSty
static void Main(string[] args)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
if (args.Length > 0)
{
if (args.Any(x => x == "run=1"))
{
var i = new Importer();
Application.Run(i);
i.RunImport();
}
}
else
{
Application.Run(new Importer());
}
}
为
Form.Load
事件编写事件处理程序:
static void Main(string[] args)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
if (args.Length > 0)
{
if (args.Any(x => x == "run=1"))
{
var i = new Importer();
// modify here
i.Load += ImporterLoaded;
Application.Run(i);
// unsubscribe
i.Load -= ImporterLoaded;
}
}
else
{
Application.Run(new Importer());
}
}
static void ImporterLoaded(object sender, EventArgs){
(sender as Importer).RunImport();
}
如果您的
RunImport
方法不需要对UI进行任何访问,那么您应该能够在应用程序之前调用RunImport
。运行