ALL,
我试图了解C#WinForms如何创建自定义控件。我根据组框制作了自定义控件。根据某些值,我在里面创建了一组不同的控件 我还成功地将此控件添加到Visual Studio工具箱中,并可以将其拖放到表单本身上 由于控件的创建将取决于某个变量,因此我将其作为此类中的属性。它在Visual Studio的属性列表中可见。
这是控件的伪代码。
public partial class MyGroupBox : System.Windows.Forms.GroupBox
{
private int m_type;
public RadioButton price;
public RadioButton rb13;
public int type
{
get { return m_type; }
set { m_type = value; }
}
public MyGroupBox()
{
m_type = type;
InitializeComponent();
price = new RadioButton();
if (type == 3)
{
rb13 = new RadioButton();
}
}
然而,在将控件拖到窗体后,我发现在设计器源代码 - Form1.Designer.cs
中 - 控件创建为:
this.entry = new MyGroupBox(this.components);
因此,当程序运行时,我的空构造函数不会被调用。
我的问题是:
this.components
参数的构造函数是什么? Form1.Designer.cs
,如何正确地进行此操作?提前谢谢。