我做了一个用户控件,一直工作正常,直到我做了更改 - 我改变了它:
Public Sub New()
InitializeComponent()
End Sub
到此:
Public Sub New(Optional ViewMode As Boolean = False, Optional sMaterial As String = "", Optional sCost As String = "", Optional sQuantity As String = "", Optional bOnOrder As String = "", Optional bDelivered As String = "")
InitializeComponent()
currMaterial = sMaterial
currCost = sCost
currQuantity = sQuantity
currOnOrder = bOnOrder
currDelivered = bDelivered
currViewmode = ViewMode
End Sub
我需要能够写入控件和存储值,但是现在我已经添加了这个,我得到了“No Constructor Found”错误。我做错了什么?
答案 0 :(得分:2)
为了创建任何类的实例,您需要调用构造函数。将控件实例添加到设计器中的表单时,无法将参数传递给构造函数,因此必须调用无参数构造函数。您的控件中不再有无参数构造函数,因此您无法在代码中仅在设计器中添加实例。如果您希望能够在设计器中添加实例,则恢复无参数构造函数,然后在“属性”窗口中设置这些值。
如果您希望能够在代码中创建实例,则可以保留两个构造函数。在您的情况下,您的新构造函数具有所有参数的默认值,因此只需将这些字段/属性设置为无参数构造函数中的默认值。