我有一个datePicker,其Text属性已绑定到视图模型。
我没有选择UpdateSourceTrigger作为propertyChanged,而是使用Explicit。 在KeyDown事件中,我调用了binding.UpdateSource()方法。
我面临的问题是,当我在文本框中输入值30/10/1983时,在视图模型中,我最终只得到值30/10/198。我没有得到最后输入的数字,除非我做了丢失的焦点或标签。
当我输入第一个值3时,视图模型属性会被通知为NULL。
我应该订阅其他活动吗?
我做错了什么,有人可以帮忙。
另外,我在viewmodel中使用string属性而不是DateTime?这是正确的方法吗?
由于
答案 0 :(得分:0)
在Dispatcher中调用binding.UpdateSource()以使其工作。我的假设是datePicker仅在TextChanged事件之后更新值。因此,在Dispatcher调用中移动binding.UpdateSource()将解决您的问题。 http://msdn.microsoft.com/en-us/library/cc190824%28v=vs.110%29.aspx