我正在構建一個SL4應用程序。目前,我的驗證適用於以下情形:Silverlight:只要用戶關注文本框,就立即生效?
- 用戶集中在文本框中
- 用戶類型無效數據
- 用戶失去焦點文本框
但是,它不爲此工作:
- 用戶專注於文本框,其中已包含無效數據
- 用戶將注意力放在文本框上
如何在第二種情況下觸發驗證?
我這樣做的原因是我有一個「姓名」字段,最初是空的,但必須填寫。如果用戶跳過它,我想標記錯誤。
我正在構建一個SL4應用程序。目前,我的驗證適用於以下情形:Silverlight:只要用戶關注文本框,就立即生效?
但是,它不爲此工作:
如何在第二種情況下觸發驗證?
我這樣做的原因是我有一個「姓名」字段,最初是空的,但必須填寫。如果用戶跳過它,我想標記錯誤。
從您的名字大小寫開始:您可以使用內置的[Required]驗證程序。 這是否會做到這一點取決於你如何實現你的輸入表單。
如果在描述的場景中沒有觸發,您可以編寫一個方法在Submit,LostFocus或適合解決方案的任何位置調用,瀏覽包含表單的Visual Tree並觸發驗證。
只要新數據從UI傳輸到視圖模型,就會進行驗證。默認情況下,這發生在丟失的焦點上,但是您可以將此默認值更改爲每次輸入更改(命中鍵)或手動(通過調用綁定類的方法)。
在任何情況下,當表單出現時,用戶看到無效數據都是非常令人困惑的....請避免它。在顯示錶單之前執行手動Validatio ...,然後在顯示之前嘗試更正或取消無效數據。
的確,看起來像你指向我的'[Required]'驗證器也可以解決這個問題。我目前正努力在我的SL4項目中獲得一個'DataForm'。 – 2010-10-03 17:46:45