如何自动阻止加载表单

时间:2018-04-06 05:07:45

标签: .net vb.net

我使用表单应用程序。当我启动它时,主窗体会自动启动,这意味着该类也会自动创建。

有没有办法可以像下面那样手动执行此操作,或者是从一开始就始终初始化的表单应用程序的第一种形式?

gMainForm = New MainForm
gMainForm.Show()

1 个答案:

答案 0 :(得分:2)

如果您在项目属性中启用了Application Framework,那么是,将自动创建并显示启动表单。您可以挂钩启动过程并在此之前执行操作或退出应用程序而不会发生但您无法运行应用程序并且没有显示启动表单。

您可以执行的操作是禁用Application Framework,然后编写自己的Main方法。在该方法中,您可以选择在需要时调用Application.Run,如果您确实调用它,则可以传递自定义ApplicationContextHere是后者的一个例子。这是该示例中的Main方法,用我自己添加的模块编写:

Module Program

    Public Sub Main()
        Application.Run(New TrayApplicationContext)
    End Sub

End Module

在这种情况下,TrayApplicationContext是继承ApplicationConext的类。 Application.Run是创建消息泵的原因,它需要表单或应用程序上下文。在这种特殊情况下,TrayApplicationConext包含TrayApplicationManager,这是一个显示NotifyIcon并允许从那里显示表单的组件。