2008-10-25 100 views
0

當我想知道人們如何處理這樣的情況,當你有一個驗證事件,你需要向用戶顯示一個對話框,詢問是否他要繼續或取消處理重入驗證事件。如何顯示對話框

的問題是,顯示該對話框時,它會導致另一個驗證事件,因爲它被認爲是再次失去焦點的控制,和你最終對話框彈出窗口的無限循環。

驗證事件之前或之後,我可以不顯示的消息框或者,因爲無論用戶尚未完成編輯的控制,或價值已經被提交和回滾會導致其自身的問題。

我在做什麼,現在是顯示對話框之前設置一個標誌,並隨後將其清除,然後在驗證事件的功能,檢查是否設置了標誌,如果是,跳過功能。它的工作原理很繁瑣,容易出現程序錯誤。

有沒有更簡單的方法來處理這樣的事情?

回答

1

看看在你的控制CausesValidation財產。您可以設置您按下的按鈕是否導致驗證事件觸發。您也可以編程方式設置此值,以防止驗證邏輯在不合時宜的情況下觸發。