2012-06-27 83 views
4

我创建了一个自定义的控制的基础上,在PictureBox:如何将自定义控件添加到工具箱?

public class Timebar : System.Windows.Forms.PictureBox 

此工作正常,如果我手动创建的控制/设置的所有值等等等等,在窗体的初始化方法。

现在我也发现了这一点,在工具箱的顶部:http://i.imgur.com/4KUc0.png

当我尝试通过MSVC插入它,但是我得到一个错误。

Failed to create component 'Timebar'. The error message follows: 
'System.MissingMethodException: Constructor on type 'SC.Timebar' not found. 

这不正是我的时间栏组成一个巨大的问题(我将手动添加该组件),但它与自定义按钮我想使(东西更看中的,则默认)。

有一个在类的构造函数:

public Timebar(Data refr) 
{ 
    this._refr = refr; 
} 

如何解决上面的错误?

感谢,

在设计中使用必须有一个参数的构造函数〜Tgys

+0

测试添加一个空的构造函数链中使用默认值的其他构造,? – Patrick

回答

6

控制。设计者需要创建一个控件来显示并允许你操作它,但是它不知道它应该如何调用一个需要参数的构造函数。

所以,我会做的是创建一个参数的构造函数,即

class Foo 
{ 
    public Foo() : this(SomeType.Value) { } 
    public Foo(SomeType whatever) : { /* do stuff /* } 
} 
+0

当然,忘记了设计者没有传递参数的事实。 =) – Tgys

相关问题