VB.NET WinForms 应用程序中 Program.cs 的等价物是什么?
我需要将我的 .CS 应用程序移至 VB.NET。
由于我在 Program.cs 中的 WinForms 项目中没有表单,因此我执行以下操作:
Application.Run(new MyForm(parm1, parm2);
如何在 VB.NET 中移动此代码?
谢谢
默认情况下,VB.NET 应用程序使用神秘的Windows 应用程序框架,这意味着构建过程会为您添加一个入口点,该入口点会自动运行您用作主窗体的任何窗体。您可以通过Project Properties > Application > Windows application framework properties访问这些设置。
如果您不想使用该框架,请取消选中Enable application framework复选框,然后选择您要Sub Main
用作Startup object的那个。然后,您可以创建一个带有Public Sub Main
方法的模块,该方法将成为应用程序的入口点,就像在 C# 中的 Program.cs 中一样。
不管是 Program.cs 还是 YouNameIt.cs。
默认入口点是Main()
.
此代码应该可以工作,除非您有另一个入口点(可以在项目设置中指定)。
Shared Sub Main()
' Starts the application.
Application.Run(New Form1())
End Sub
正如史蒂文的回答所说,默认情况下,您不需要像Program.cs
VB.NET 应用程序中的任何东西。但是,如果您想替换标准启动代码,您可以添加一个新模块并将其选为启动对象。
首先,右键单击项目并选择添加:模块...。您可以为模块命名任何您喜欢的名称,但我将其命名为 Program.vb 以与 C# 默认值保持一致。粘贴以下代码:
Module Program
Public Sub Main()
Application.Run(New Form1()) ''//Use your main form here
End Sub
End Module
接下来,右键单击项目并选择属性。在“应用程序”选项卡上,取消选中“启用应用程序框架”。然后将启动对象更改为Program。还有一个名为 Sub Main 的选项,我认为它可以在Main()
任何地方运行子例程。
现在您已经替换了标准启动代码,您可以将其他内容添加到您的Main()
子例程中。我注意到 MSDN 上的另一件事(如何:更改应用程序的启动对象):
当使用自定义 Sub Main 过程作为 Startup 对象时,不会执行应用程序事件(
Startup
、Shutdown
、StartupNextInstance
和)中的代码。UnhandledException