我需要創建5個類似的窗體,每個窗體都有一點變化。一個可能有一些額外的文本框,其他可能有較少的字段。數據表將是獨立的,但功能將是相同的。我將創建一個包含所有相關TableAdopter的數據集。然後我會有另一層「業務邏輯」來填充表中的數據。使用「面向對象」技術創建表單的正確方法是什麼?我如何實現這一點?使用面向對象技術創建Windows窗體
回答
就像史蒂文說,你應該看看繼承的構成,所以做出你需要的小控件,然後將其中的幾個添加到每個表單中。但是,如果你確實設置了繼承,你可以使用Winforms來實現,我很確定有一個嚮導甚至可以讓你從現有的表單繼承。
面向對象是不同的,取決於你與誰交談,如果它是來自C++背景的人,那麼他們無疑會說oo背景下的多態性和繼承性,但是如果你和Java和.NET的人談論OO,可能會更多地關注封裝和組成。
繼承仍然有它的位置,只是大多數問題可以通過組合更容易和更好地解決。
謝謝你的回覆。 舉一個具體的例子,假設我需要創建一個帶有10個文本框和一個包含5列的網格控件的表單「Form A」,並創建另一個帶有12個文本框的「表單B」,其中10個與「來自A「以及也有4列的網格控件。我將如何使用「繼承構造」來實現此功能 – developer
您將創建一個擁有10個文本框和一個擁有12個文本框的用戶控件的用戶控件(或者您可以使用10個控件繼承一個新控件並添加2個控件)然後,您將其添加到您的表單,所以你的表單行爲是由單獨的用戶控件組成的,而不是繼承。這樣,如果您需要將10個文本框更改爲9,那麼您可以使用9創建一個新的用戶控件,並將其添加到給定的表單中,而不是在使用直接繼承時修改每個表單。 – Grofit
- 1. Windows窗體是否是舊技術?
- 2. 在F中使用Windows窗體的面向對象的「Hello world」#
- 3. 我需要使用哪些Web技術才能創建類似Windows窗體的界面?
- 4. 在Qt前端用戶創建新對象的適當技術
- 5. JavaScript面向對象的編程技術,這叫做什麼?
- 6. 使用Windows窗體傳遞對象
- 7. 使用XML創建一個Windows窗體
- 8. 如何使用面向對象技術在PHP中驗證表單域
- 9. 爲什麼ScrewTurn技術上使用.ashx創建維基頁面?
- 10. 技術來創建CFG的
- 11. 使用Windows窗體創建國際象棋棋盤
- 12. 在C#中使用Windows窗體創建多個窗體?
- 13. 創建Windows窗體C#
- 14. Rails窗體不創建對象
- 15. 從窗體對象中創建類
- 16. 創建窗體對象不參考
- 17. 創建窗體窗體與頁面
- 18. windows移動技術
- 19. SonarQube:無法創建用戶技術
- 20. 用於創建Web服務的技術
- 21. 使用SWIG創建一個面向對象的API使用SWIG
- 22. 使用UI技術的網絡技術
- 23. Symfony窗體創建新對象並創建第一個一對多對象
- 24. 使用相同的值在窗體中創建對象
- 25. 使用沒有窗體的Django CreateView來創建對象
- 26. 使用沒有窗體的視圖創建django對象
- 27. Django使用外鍵創建沒有窗體的對象
- 28. 創建Windows窗體C#應用程序
- 29. 哪些媒體查詢技術使用
- 30. 哪些圖形技術用於爲Visual Studio 2013創建界面?
您可以創建自定義控件,使用基類具有所有常見的東西,然後按照您的意願繼承它。 – Scis