动态启动表单

时间:2010-04-22 11:11:37

标签: c# .net vb.net

我在VB.net中有两种不同形式的应用程序(Form1和Form2)。 现在我需要检查一些条件,如果条件为真,那么我将Form1设置为启动 如果没有,那么我将Form2设置为启动表单。

那么无论如何动态调用启动表单? 谢谢!

3 个答案:

答案 0 :(得分:1)

如果查看主执行方法(通常为Program.csProgram.vb),您将看到静态Main(string[] args)方法。然后,您可以使用命令行参数来决定要显示的表单。

请注意,以下示例位于C#中,但应该为您提供一般概念。

public static Main(string[] args)
{
    // initialization omitted

    if (args.Length.Equals(0))
    {
        // load form 1
    }
    else if (args[0].Equals("SomeValue", StringComparison.OrdinalIgnoreCase)
    {
        // load form 2
    }
    else 
    {
        // load form 3
    }
}

答案 1 :(得分:1)

将您的Main方法更改为以下内容:

[STAThread]
static void Main()
{
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    if(...condition...)
    {
        Application.Run(new Form1());
    }
    else
    {
        Application.Run(new Form2());
    }
}

这是C#,但原则也适用于VB。

答案 2 :(得分:-1)

检查名为Program.vb的文件。这是启动表单初始化的地方。你可以把你的逻辑放在那里。