2012-06-27 148 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

相關問題