2012-12-04 42 views
1

我實現了自定義驗證規則以在我的WPF項目中與TextBoxes一起使用。我有以下問題:WPF驗證錯誤導致雙重轉換爲int

例如,如果我有一個用於輸入雙精度值的文本框,驗證錯誤後(例如,輸入「30.0」,當文本爲「30」時,我必須得到驗證錯誤)。驗證/綁定機制將整數(「30.0」)的雙重表示轉換爲整型表示(「30」)。 如果我保留驗證規則但始終返回ValidationResult.ValidResult或刪除驗證規則,則該值不會更改並保持「30.0」。

我該如何解決它/解決方法呢?

+1

請張貼一些代碼(綁定,屬性和驗證)。當文本框爲空時會發生什麼? – Paparazzi

回答

1

您可以控制綁定何時觸發。如果每次擊鍵都發生這種情況,那麼您將遇到無效中間案例30.問題,如您所描述的。

您可能會希望將UpdateSourceTrigger=LostFocus添加到您的綁定中。

這裏有一些更多的信息在這裏:http://msdn.microsoft.com/en-us/library/ms754356.aspx