網絡窗體窗體應用程序。我有一個組合框和一個文本框和一個關閉窗口按鈕。現在,如果我在組合框或文本框中進行了任何更改並單擊了關閉窗口按鈕,它應該提示用戶保存修改。如果不做任何修改(用戶將只運行該應用程序,不作任何修改)那麼它不應該提示用戶。它應該直接關閉..我該怎麼做?關閉前確認
Q
關閉前確認
4
A
回答
1
一種方法是保持一個布爾標誌稱爲_changed或類似的東西作爲你的窗體上的成員變量。 然後在TextBox的TextChanged事件和ComboBox的SelectedIndexChanged事件中,您只需設置_changed = true。
然後,在表單關閉之前,如果_changed爲true,則提示用戶。
編輯:
如果您有窗體上的許多TexBox控制,可以勾他們都到同一個TextChanged事件處理程序。然後,無論哪個文本框的文本更改,_changed將被設置爲true。
然後做多組合框控件和一個SelectedIndexChanged事件相同。
如果您確實有很多控件,而不是手動掛接每個控件,甚至可以編寫一個遞歸循環遍歷表單的Controls集合的方法,並將每種類型的控件掛接到適當的事件處理函數。然後,您可以以超過1種形式重複使用該方法,爲您節省大量時間和維護,因爲您添加新控件時會自動處理。
4
一個簡單的方法是在表單中添加一個dirty
成員,每當有任何變化時我將它設置爲true
,然後在表單關閉時檢查它。
4
重寫表單的OnClosing方法(或連接到Closing事件)。在處理程序中檢查修改並向用戶顯示消息框。如果您不希望表單關閉,只需在返回之前將e.Cancel屬性設置爲false即可。
相關問題
- 1. 關閉前確認框
- 2. 關閉標籤前確認框
- 3. 關閉eclipse確認移動
- 4. 確認窗口關閉
- 5. 確認關閉彩盒
- 6. visual studio 2010確認關閉
- 7. 關閉瀏覽器窗口之前的javascript確認對話框
- 8. 在關閉活動聊天窗口之前確認框
- 9. 在應用程序關閉之前顯示確認提醒2
- 10. 如何在JVM關閉之前設置確認?
- 11. 在關閉DialogFragment之前獲取用戶確認
- 12. vim:在關閉多個選項卡之前確認
- 13. Apache poi excel文件在關閉前拋出確認
- 14. 在關閉模擬器前詢問確認android
- 15. 關閉窗口確認,但不關閉孩子
- 16. 關閉確認上設置斷點GDB
- 17. 芹菜:如何關閉任務確認?
- 18. 關閉窗口時如何確認?
- 19. 關閉Watir彈出的「確認導航」
- 20. 如何確認「強制關閉」
- 21. jQuery EasyUI:關閉窗口確認
- 22. 添加窗口關閉確認
- 23. 前景的MailItem沒有正確關閉
- 24. 從JUnit測試確認FileReader已正確關閉
- 25. Extjs:在關閉窗口之前保存更改的確認消息
- 26. 確認用戶在頁面關閉之前通過jquery提交表單
- 27. 瀏覽器確認關閉:取消按鈕也關閉瀏覽器
- 28. 關閉當前UserControl
- 29. 關閉前提示
- 30. 確認前執行
謝謝..它的工作..我還有一個疑問。在這裏我只有一個文本框和一個組合框,並且我將在TextBox的組合和TextChanged事件的SelectedIndexChanged中將_changed設置爲true。如果我有更多的控制,該怎麼辦?我是否應該在每個控制中將_changed設置爲true或者是否有任何選項,以便我可以在該表單中的任何控件發生任何更改時應用它。我的意思是說,我可以申請的形式..即,如果有任何變化形式_changed必須爲真 – saeed 2010-06-08 11:12:27
我編輯我的答案根據您的後續問題。 如果你認爲我的回答最有用,那麼投票如何? ;) – 2010-06-09 07:10:25