WPF(.net 3.5)绑定到数字(int,dbl)但允许用户不输入任何内容

cod*_*ode 4 validation wpf binding

如果绑定到可以为空的double(或int)的视图模型属性,那么如何允许用户不指定任何内容.

我看了验证,但我看不出如何能帮助你.

看起来如果文本框被清空,WPF将其视为空字符串,然后不会将其放入vm proptery中.

所以我能想到的两种方法是:

  1. vm属性是一个经过验证并更新支持模型的字符串.
  2. 表示没有值的特殊代码(在我的情况下,dbl不应该是neg,所以-9可能是null ...但不喜欢幻数的想法)

还有其他想法吗?我错过了什么吗?

科迪

Qua*_*ter 8

TargetNullValue设置为绑定上的空字符串.当WPF看到此值时,它会将源设置为null,而不是尝试转换该值.

{Binding TargetNullValue=''}
Run Code Online (Sandbox Code Playgroud)