【问题标题】:Where and when is InitializeComponent called in Windows Forms control in VB.NET?在 VB.NET 的 Windows 窗体控件中何时何地调用 InitializeComponent?
【发布时间】:2010-11-05 18:36:48
【问题描述】:

我在 VB.NET 中做一个 Windows 窗体项目,但 VB.NET 对我来说是全新的,我主要是 C# 开发人员。

在 C# Windows 窗体中,用户控件的 InitializeComponent 从窗体/控件的构造函数中调用。当我在 VB.NET 中创建相同的场景时,我没有得到构造函数,也找不到调用 InitializeComponent 的位置。

我需要在 InitializeComponent 和控件的Load 事件引发时调用我的代码,最好还是在控件的构造函数中。我如何在 VB.NET 中做到这一点?

【问题讨论】:

  • 构造函数默认在你的.Designer.vb文件中。

标签: vb.net winforms


【解决方案1】:

在 VB.NET 中,构造函数称为 New,并具有以下基本签名。

Public Sub New()
End Sub

您当然可以覆盖它并添加自定义参数。

顺便说一句,Visual Studio 2008 会提醒您将 InitializeComponent() 方法放在构造函数中以防您忘记,因为省略会导致控件出现奇怪的行为。

【讨论】:

    【解决方案2】:

    转到表单中的查看代码,然后从右侧下拉菜单中选择“新方法”。

    在那里你可以看到 InitializeComponent 被调用并插入你的逻辑。

    如果您的表单为空,您的代码应如下所示:

    Public Class Form1
    
        Public Sub New()
            ' This call is required by the Windows Form Designer.
            InitializeComponent()
    
            ' Add any initialization after the InitializeComponent() call.
        End Sub
    
    End Class
    

    【讨论】:

      猜你喜欢
      • 2011-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多