我有以下TextEdit,绑定到可空字段(Value1):
<dxe:TextEdit EditValue="{Binding Path=Data.Value1, TargetNullValue={x:Null}, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True}" EditValueType="{x:Type sys:Double}" Mask="##.# miles" />
当我点击BackSpace时,它会显示剩余的掩码部分(如:。miles ),并且其EditValue在后台设置为 0 (这是错误的因为它被绑定到可空的字段)
我打算在使用BackSpace或Delete时使EditValue为null。
如果没有转换器或KeyPress事件处理程序,我怎么能这样做?
答案 0 :(得分:0)
事实上这是可能的,您需要做的就是将 AllowNullInput 设置为 true 。您可能还需要更改蒙版,使其不显示文本。删除每个值时的里程。
这是我的样本:
<Grid Background="DimGray">
<dxe:TextEdit EditValue="{Binding Path=Value, TargetNullValue={x:Null},
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True}"
MaskType="Numeric"
EditValueType="{x:Type sys:Double}"
AllowNullInput="True"
Mask="#0.0 miles"
VerticalAlignment="Center"/>
</Grid>
希望这有帮助!