我是很新的vb.net,和Windows Forms的研究與開發爲一體,所以這可能都是很基本的,但在這裏不用。自定義構造函數:最佳實踐
我想從一些其他形式打開一個新的形式,並從該表格到新的窗體上的一個控制傳遞一些選定的對象。我認爲,明智的做法是作爲窗體構造函數的參數。現在我知道Visual Studio GUI爲我的表單創建了部分類,這些類包含可以在設計器中拖動到其中的屬性。我假設它也包含一個默認的構造函數。因爲它可能做到這一點是需要初始化形式各種各樣的東西,我想我應該從我的自定義構造函數中調用它阿拉
public sub new(byval my_parameter as Foo)
Me.new()
Me.my_parameter = my_parameter
do_some_initialisation()
end sub
這顯然不是它,因爲它無法找到一個默認的構造函數。事情是,Visual Studio會花費很多時間來防止我看到生成的構造函數,所以我知道如何訪問它。這使我相信,我其實這樣做是錯誤的,應該已經設置了一些不同的道路,因爲你是被迫到通常的路徑是做合理的事情,這是我usualy發現太晚。
所以我應該怎麼做這樣的事情?
+1 brevitas – Martijn 2010-11-01 15:27:21
與下面的aswer Combinding這樣的:如果我稱之爲'MyBase.New()',我還是要呼籲'的InitializeComponent()'? – Martijn 2010-11-01 15:28:41
默認窗體構造函數通常會調用它。如果您只是刪除Me.new()行,則TBH代碼很好。我只是簡單地展示瞭如何正確調用基礎構造函數。 – 2010-11-01 15:41:08