我有自定义控件MyControl
。有一个无参数构造函数(VB中为Sub New()
)。
我将该控件放在WinForm中。
没问题。
现在,想要该构造函数中的参数。 Sub New(flag as Boolean)
在这种情况下我应该如何处理VS设计师,以便能够在Designer中打开该表单?
我在myForm中做了以下
Public Sub New()
MyBase.New()
Me.MyControl_1 = New MyControl(True)
Me.InitializeComponent()
但设计师说:
变量'MyControl_1'也是 未申报或从未被分配。
答案 0 :(得分:2)
设计人员需要一个无参数构造函数来构建可视组件。即使将重载的构造函数添加到用户控件也会破坏设计器。有关详细信息,请参阅this问题。
答案 1 :(得分:1)
修改为此
Public Sub New()
MyBase.New()
Me.InitializeComponent()
Me.MyControl_1 = New MyControl(True)
让设计师在使用之前初始化cotrol。问题不在于你的控制,问题是你没有在正确的地方使用。