2017-06-29 66 views
0

在Visual Studio中创建VB.NET Winforms项目时,有很多与初始化相关的代码似乎隐藏起来。是否有办法通过创建MyProjectMyApplication对象,创建和展示SplashScreen以及最终定义和创建My.Application.ApplicationContext.MainForm来从一开始就看到哪些语句运行?Visual Studio Winforms项目隐藏的启动代码

也就是说,一个控制台应用程序项目有一个Sub Main()是可见的,我认为一个Winforms应用程序也应该有一个,但它是隐藏和包装与创建SplashScreen,主窗体等实例的例程。喜欢看到并更好地理解这个流程。

谢谢!

+0

如果你指的是形式初始化,然后在** Solution Explorer中的右上角**点击按钮与左边三个文件** <> **然后单击表单的小箭头并打开** Form.Designer.vb ** – Mederic

+0

@Mederic,不,我的意思是整个应用程序。也就是说,一个控制台应用程序项目有一个可见的“Sub Main()”,我认为Winforms应用程序也应该有一个,但它隐藏起来,并且为创建SplashScreen,主窗体等实例而封装。希望看到并更好地理解这个流程。 – VBobCat

回答

2

点击Project - > Properties - > Application Tab - > View Application Events Button(选项卡的右下角)。

在这里您可以创建一个Application.Startup() Event,这相当于在控制台应用程序中的Sub Main;至少它是您应该放置需要运行的代码的第一个地方。 *使用代码编辑器顶部的DropDown;将“MyApplication”更改为“(MyApplication Events)”,并将“OnCreateMainForm”更改为“Startup”。

这里您还可以查看构造函数New()OnCreateMainForm(),这是创建启动窗体的地方。下面是所有这些共同的例子:

Option Strict On 
Option Explicit On 
'------------------------------------------------------------------------------ 
' <auto-generated> 
'  This code was generated by a tool. 
'  Runtime Version:4.0.30319.42000 
' 
'  Changes to this file may cause incorrect behavior and will be lost if 
'  the code is regenerated. 
' </auto-generated> 
'------------------------------------------------------------------------------ 

Imports Microsoft.VisualBasic.ApplicationServices 

Namespace My 

    'NOTE: This file is auto-generated; do not modify it directly. To make changes, 
    ' or if you encounter build errors in this file, go to the Project Designer 
    ' (go to Project Properties or double-click the My Project node in 
    ' Solution Explorer), and make changes on the Application tab. 
    ' 
    Partial Friend Class MyApplication 

     <Global.System.Diagnostics.DebuggerStepThroughAttribute()> 
     Public Sub New() 
      MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows) 
      Me.IsSingleInstance = False 
      Me.EnableVisualStyles = True 
      Me.SaveMySettingsOnExit = True 
      Me.ShutdownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses 
     End Sub 

     <Global.System.Diagnostics.DebuggerStepThroughAttribute()> 
     Protected Overrides Sub OnCreateMainForm() 
      Me.MainForm = Global.VB_Scratch_WinForms.Form1 
     End Sub 

     Private Sub MyApplication_Startup(sender As Object, e As StartupEventArgs) Handles Me.Startup 

     End Sub 

    End Class 

End Namespace 
1

我相信你所要求的是埋在混合的地点。 Console Sub Main()与您的应用程序设置下的“启动窗体”相同;通常Sub Main()等价于我的Mainform_Load。在解决方案资源管理器中,如果你经历了“我的项目”(确保你点击了“显示所有文件”,并且展开了所有的树,你将会看到诸如Application.Designer.vb,Resources.Designer的.vb,并Settings.Designer.vb它会显示你自动生成的信息属于您的项目。这些都加载甚至初始化启动窗体之前。

您还可以使用ApplicationEvents.vb的(位于应用程序下我的项目下的标签),它显示你并允许你在创建启动表格前调用代码

所有这些部分一起可能是你感兴趣的东西,但如前所述,大部分是在罩下和Sub Main()真的是你想要它在Windows中的任何东西表格申请。

希望这些文件有帮助。

相关问题