如何正确创建包含已填充列表的自定义控件?
例如:我需要一个包含产品列表的组合框控件,然后我会在其他项目中重用该控件。
我的代码是:
Public Class ProductCombo
Inherits ComboBox
Public Sub New()
Me.Items.Add("Product 1")
Me.Items.Add("Product 2")
End Sub
End Class
并且它有效,但是当我运行项目时,每个项目都是重复的 - 这是因为列表填充了两次。首先,当用户向表单添加控件时,第二个是设计者在项目启动时添加。
我已经找到了一个防止在编辑模式下添加项目的解决方案,但这不是我需要的。我想让它们以编辑模式存在,以便在此时进行编辑。
这个问题有解决方法吗?
答案 0 :(得分:1)
protected override void OnCreateControl()
{
base.OnCreateControl();
if (Items.Count == 0)
{
Items.Add("Product 1");
Items.Add("Product 2");
}
}