2010-04-05 29 views
0

我正在使用MVVM創建一個WPF應用程序。該應用管理標記文檔,稱爲Notes,類似於博客文章。註釋包含標題,文本和標籤集合。我想在提交兩條驗證規則時驗證註釋:WPF:在提交時驗證對象

  • 標題不能爲空;和
  • 該注必須至少有一個標記。

如果驗證失敗,則提交註釋被取消,UI中的有問題的控件應該顯示爲紅色輪廓,並且工具提示應解釋錯誤。如果一個人想在WPF控件更新綁定源的時候驗證,這一切都顯得非常簡單。只需創建一個自定義ValidationRule並將其添加到<Binding.ValidationRules>集合。

我的問題是,我想驗證註釋提交時,而不是控件更新其綁定源時。我知道我可以創建自定義錯誤消息並將其顯示在MessageBox中,但我更願意使用紅色的輪廓工具提示方法 - 它不那麼具有侵入性。我認爲必須有一些簡單的方法來做到這一點。

我的問題很簡單:在WPF/MVVM中執行提交驗證的最佳方式是什麼?當驗證失敗時,我的代碼如何指示UI顯示紅色錯誤大綱?謝謝你的幫助。

回答

0

一個選項是使用IDataErrorInfo in conjunction with WPF

這樣可以很容易地處理這種情況。您可以在提交時設置IDataErrorInfo信息,這會導致出現「紅色輪廓」(或其他錯誤主題)。

+0

鏈接文章看起來不錯 - 謝謝! – 2010-04-05 19:14:43