模型
public int? SizeLength { get; set; }
XAML
<TextBox Text="{Binding [someViewModel].SizeLength, Mode=TwoWay}"></TextBox>
用户尝试退格或删除此textbox
中的值后,会显示消息Value '' cannot be converted
。
我可以知道它有什么问题吗?
答案 0 :(得分:24)
使用:
{Binding TargetNullValue=''}
答案 1 :(得分:4)
由于从字符串到单个/ double / int的集成转换器需要解析字符串,因此它们不会将空值默认为0,因为您不会总是想要这种行为,因此它是在MSDN中编写的:
获取或设置当值的目标值时使用的值 来源为空。
使用它来定义空输入的默认值:
{Binding TargetNullValue=''}
答案 2 :(得分:0)
您需要在XAML,Nullable或?中添加mscorlib的引用在您的道具中使用TargetNullValue值&#34;&#34;像Elios说的那样。
xmlns:sys="clr-namespace:System;assembly=mscorlib"
public Nullable<int> Prop { get; set; }
{Binding prop, TargetNullValue=''}