Validation with exceptions vs IDataErrorInfo and the new INotifyDataErrorInfo <p>I'm trying out different ways of validating and I'm having a problem with the new INotifyDataErrorInfo-interface.</p> <p>When writing in for instance a bound textbox that only accepts 10 chars. I write 11 chars and tab out. The validation kicks in and marks the textbox red etc. Now, I don't want to write this invalid value down to the source of this binding, but if I'm not doing this I immediately get the value in the textbox reset to the last valid value. It's as if the binding does an UpdateTarget on it's binding even though there was an error.</p> <p>By using ValidatesOnExceptions and throwing exception in the setter I get the behaviour I'm after. The binding is not updating it's value from the source if an exceptions has been thrown in the setter. This leaves the invalid value in the textbox so that I can work with it to make it valid. I think this is far better than having to store the invalid value in the underlying object.</p> <p>The question is why IDataErrorInfo and the new INotifyDataErrorInfo behaves in this way that it updates target from source even though there were errors? Can I make it to behave more like ValidatesOnExceptions?</p> <p>I need INotifyDataErrorInfo because of other features such as async validation...</p>