Я изучаю компоненты в vb, выполнив http://msdn.microsoft.com/en-us/library/151w6x12(v=VS.100).aspx
Все работает точно так же, как учебное пособие, до добавления кода для конструктора.В моем добавленном компоненте в CDemo.vb
нет Sub New
.Я нашел Sub New
в CDemo.Designer.vb
(который, я думаю, генерируется системой).
<System.Diagnostics.DebuggerNonUserCode()> _
Public Sub New()
MyBase.New()
'This call is required by the Component Designer.
InitializeComponent()
End Sub
Если я добавлю sub New в CDemo.vb следующим образом, появится ошибка BC30269: «Public Sub New ()» имеет несколько определений с одинаковыми сигнатурами.
Public Class CDemo
Public ReadOnly InstanceID As Integer
Private Shared NextInstanceID As Integer = 0
Private Shared ClassInstanceCount As Long = 0
Sub New()
InstanceID = NextInstanceID
NextInstanceID += 1
ClassInstanceCount += 1
End Sub
End Class
Но если я не добавлю sub New в CDemo.vb, вместо этого добавлю код в CDemo.Designer.vb, он скажет, что проект не может быть запущен напрямую.
<System.Diagnostics.DebuggerNonUserCode()> _
Public Sub New()
MyBase.New()
InstanceID = NextInstanceID
NextInstanceID += 1
ClassInstanceCount += 1
'This call is required by the Component Designer.
InitializeComponent()
End Sub
Я не понимаю, что такое CDemo.Designer.vb и где я должен добавить свой собственный код?Для новичка мне трудно различить сгенерированный системой код и мой код.