2010-07-19 51 views
4

有没有办法绑定到Nullable属性而不使用值转换器?WPF:有没有办法绑定到一个可为空的<Int32>属性而不使用值转换器?

目前我有这个...

<DataGridTextColumn Header="ApplicationKey" Binding="{Binding ApplicationKey, ValidatesOnDataErrors=True, Converter={StaticResource ResourceKey=TestConverter}}" /> 

没有转换它认为一个空的文本框为的String.Empty,而不是空的。

我希望有一些类似TargetNullValue的魔法属性。

回答

0

所以,让我直接得到这个...你想要文本绑定为null而不是string.empty?

如果是这种情况,而不是通过转换器绑定,你可以绑定到视图模型中的属性(如果你没有视图模型,你可以创建它并绑定你的xaml)。

那个问题的属性然后可以返回(在属性的getter部分)空值而不是string.empty。

如果这不能解决您的问题,请详细描述以及为什么要绑定到null而不是string.empty。

9

是的,Binding上的TargetNullValue属性应该完全按照您的要求进行。如果将TargetNullValue设置为空字符串,则绑定会将空字符串转换为空值并返回:

<DataGridTextColumn Header="ApplicationKey" Binding= 
    "{Binding ApplicationKey, ValidatesOnDataErrors=True, TargetNullValue=''}" /> 
相关问题