DecimalUpDown直接编辑时不显示正确的值

时间:2012-10-25 16:56:17

标签: c# wpf mvvm wpf-controls numericupdown

我正在使用Extended WPF ToolKit的DecimalUpDown控件(v1.7)。控件的行为与使用微调控件时的预期相同,但在直接编辑文本时则不然。这是一个基本的MVVM WPF应用程序,其控件绑定到名为CurrentWidth的View Model十进制属性。      

在ViewModel中,为CurrentWidth强制执行了各种验证规则,在属性的末尾它执行RaisePropertyChange("CurrentWidth");,如果值未验证,有时会保持CurrentWidth不变。

使用微调控件进行更改时,所有错误检查,值恢复等都有效。当用户直接在框中输入文本时,验证仍然有效,但是左边的框显示用户输入的内容。当我发送一些调试信息时,Value属性和Text属性都具有正确的未修改值,但该框仍然显示用户输入的值。我尝试在发件人控件上添加一个LostFocus事件处理程序并调用InvalidateVisual(),甚至尝试了UpdateLayout(),但在选中控件后,用户输入的文本仍会显示。有人知道如何让它反映实际的当前价值吗?

1 个答案:

答案 0 :(得分:1)

下载WPFToolkit 1.8.0.此错误已在那里解决。