2012-09-19 61 views
0

我需要創建5個類似的窗體,每個窗體都有一點變化。一個可能有一些額外的文本框,其他可能有較少的字段。數據表將是獨立的,但功能將是相同的。我將創建一個包含所有相關TableAdopter的數據集。然後我會有另一層「業務邏輯」來填充表中的數據。使用「面向對象」技術創建表單的正確方法是什麼?我如何實現這一點?使用面向對象技術創建Windows窗體

+0

您可以創建自定義控件,使用基類具有所有常見的東西,然後按照您的意願繼承它。 – Scis

回答

0

就像史蒂文說,你應該看看繼承的構成,所以做出你需要的小控件,然後將其中的幾個添加到每個表單中。但是,如果你確實設置了繼承,你可以使用Winforms來實現,我很確定有一個嚮導甚至可以讓你從現有的表單繼承。

面向對象是不同的,取決於你與誰交談,如果它是來自C++背景的人,那麼他們無疑會說oo背景下的多態性和繼承性,但是如果你和Java和.NET的人談論OO,可能會更多地關注封裝和組成。

繼承仍然有它的位置,只是大多數問題可以通過組合更容易和更好地解決。

+0

謝謝你的回覆。 舉一個具體的例子,假設我需要創建一個帶有10個文本框和一個包含5列的網格控件的表單「Form A」,並創建另一個帶有12個文本框的「表單B」,其中10個與「來自A「以及也有4列的網格控件。我將如何使用「繼承構造」來實現此功能 – developer

+0

您將創建一個擁有10個文本框和一個擁有12個文本框的用戶控件的用戶控件(或者您可以使用10個控件繼承一個新控件並添加2個控件)然後,您將其添加到您的表單,所以你的表單行爲是由單獨的用戶控件組成的,而不是繼承。這樣,如果您需要將10個文本框更改爲9,那麼您可以使用9創建一個新的用戶控件,並將其添加到給定的表單中,而不是在使用直接繼承時修改每個表單。 – Grofit