我有一個主窗體,我想通過按下一些按鈕來動態更改它的內容。 比方說,我有一個按鈕「新用戶」和「登錄」,如果我按新用戶,我不想新的表單+顯示,我希望新用戶的所有標籤和按鈕顯示在右側主要形式。如果我按登錄,主窗體內容更改爲一些標籤和文本框? 這僅僅是一個例子。 我現在所能做的只是通過.Show()
命令創建新表單並將其顯示給用戶。如何更改表單內容?
回答
比方說,你有客戶,產品和供應商「窗口」。您不想與它們分離窗口,因此您可以將所有控件分組到groupboxes中,並根據用戶操作使其可見/不可見。這會起作用,但會導致代碼可讀性和可維護性的問題:您爲窗口內的許多控件編寫了大量代碼,畢竟只有一個類。
所以你可以這樣做:創建一個名爲usrCustomer或myCustomer的用戶控件或者其他東西,並粘貼到與Customer有關的所有控件:groupbox,labels,combos,everything。然後,您可以決定是否要在設計時將這個超級控件添加到主窗體中,或者如果您希望在每次需要時在運行時創建它的新實例。如果將來你必須修改某些東西,你將會去一個單獨的類(ctlCostumer),而不是在怪物主表單類中挖掘。
CAVEAT:如果這些控件在它們之間共享信息(如果產品超級控件需要知道客戶超級控件中的某些內容)並將該信息公開給公共屬性等,則必須小心。
非常感謝,我的朋友。 – Devfly 2012-02-08 13:23:56
從設計的角度來看,製作新的表格會好很多。 或者,您可以創建一些新的控件並隱藏/顯示控件。 (或使可見光屬性爲真/假)
標籤具有文本屬性,您可以更改運行時間。
這不能回答我的問題。我有很多按鈕文本框和標籤。如果我顯示/隱藏它們將會很糟糕。我敢肯定,有很多方案都有。 – Devfly 2012-02-08 12:13:39
創建不同的父面板。在面板上放置不同的控制組。顯示/隱藏面板? – 2012-02-08 15:00:19
從可維護性/可讀性。將控件分成邏輯集。每一組都可以指示你的程序的不同狀態.. – 2012-02-08 15:02:40
如果您不想顯示新表單,可以將與用戶相關的所有控件(標籤,文本框....)包裝在容器中,例如simple Panel,然後隱藏/顯示面板取決於你的表單狀態。
是的,我想到了。會嘗試! – Devfly 2012-02-08 12:49:03
- 1. 表單的No-mobile更改內容列
- 2. Mootools表單提交和內容更改
- 3. 如何用ajax修改表單內容?
- 4. 更改單身內容
- 5. 如何更改InfoBox內容?
- 6. 如何更改iframe內容?
- 7. 如何更改SpannableString內容?
- 8. 如何訂購表格,更改的內容以及將要更改的內容?
- 9. 如果表內容更改,更新RowSet?
- 10. 如何更改表單提交後的頁面內容ASP.net C#
- 11. 使用輸入表單更改表格的單元格內容
- 12. 如何更改div內div的內容?
- 13. 更改內容
- 14. 簡單的內容更改。上一頁 - 下一頁更改內容
- 15. 單擊時更改按鈕的內容?
- 16. winforms gridview單元格內容已更改
- 17. 如何更改div的內容
- 18. 如何動態更改JLabel的內容
- 19. 如何動態更改td內容?
- 20. 如何實時更改TextView的內容
- 21. 網站如何每天更改內容?
- 22. 如何更改點擊中的內容?
- 23. 如何更改GLSurfaceView的內容視圖?
- 24. 如何更改短內容中的位
- 25. 如何更改PHP中的div內容?
- 26. 如何動態更改div內容?
- 27. 如何更改UIPickerView說的內容?
- 28. 如何更改jquery mobile中的內容?
- 29. 如何更改內容的DB位置
- 30. 如何更改tabhost的內容?
請澄清哪個VB版本(VB6,VB.NET)並相應標記 - 標記'basic'不會給你許多好的答案。 – Filburt 2012-02-08 12:11:22