如何使用Delete或BackSpace清除蒙版的TextEdit

时间:2017-10-05 10:16:13

标签: devexpress devexpress-wpf

我有以下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事件处理程序,我怎么能这样做?

1 个答案:

答案 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>

希望这有帮助!