有没有办法在不使用值转换器的情况下绑定到Nullable属性?
目前我有这个...
<DataGridTextColumn Header="ApplicationKey" Binding="{Binding ApplicationKey, ValidatesOnDataErrors=True, Converter={StaticResource ResourceKey=TestConverter}}" />
如果没有转换器,它会将空文本框视为String.Empty而不是Null。
我希望有像TargetNullValue这样的魔法属性。
答案 0 :(得分:12)
是的,Binding上的TargetNullValue属性应该完全符合您的要求。如果将TargetNullValue设置为空字符串,则绑定将空字符串转换为null并返回:
<DataGridTextColumn Header="ApplicationKey" Binding=
"{Binding ApplicationKey, ValidatesOnDataErrors=True, TargetNullValue=''}" />
答案 1 :(得分:0)
所以让我直截了当...你想要将文本绑定为null而不是string.empty吗?
如果是这种情况,您可以COULD绑定到视图模型中的属性,而不是通过转换器进行绑定(如果您没有视图模型,则可以创建它并将xaml绑定到它)。
然后,有问题的属性可以返回(在属性的getter部分中)null值而不是string.empty。
如果这不能解决您的问题,请详细描述以及为什么要绑定到null而不是string.empty。