如何在XAML中为TextEdit绑定Mask属性?

时间:2018-11-28 09:09:47

标签: wpf xaml devexpress

我试图在WPF项目中设置一个TextEdit框,但是我的蒙版存在一些问题。

XAML:

select2

其中Mask返回一个类似“ [a-zA-Z0-9]”的字符串,而InputLength返回一个值。我不能在框中插入任何内容,或者最多只能插入一个字符。事实是,该蒙版在我的SpinEdit框中可以正常工作,其编码如下:

XAML:

     <dxe:TextEdit x:Name="dxTextEdit" 
                   Height="23" MinWidth="200" Width="Auto"
                   HorizontalAlignment="Right"
                   Text="{Binding Value, Mode=TwoWay}"
                   MaskType="RegEx" 
                   MaxLength="{Binding InputLength}"
                   Mask="{Binding Mask, Mode=TwoWay}"
                   />

Mask返回“ d”,“ n0”之类的字符串

我需要能够绑定输入长度和在xaml中定义我的掩码的字符串。有什么想法我做错了吗?我遍历了大多数devexpress论坛,发现了这样的内容:Mask =“([a-zA-Z0-9] | \ s){0,31}”,但是它不允许我修改长度或正则表达式。

1 个答案:

答案 0 :(得分:1)

在屏蔽模式下,TextEdit.MaxLength属性不起作用,必须设置为0。在这种情况下,最终用户可以输入的字符数由编辑器的掩码指定。 查看Quantifiers帮助文章的Mask Type: Extended Regular Expressions部分,了解如何创建适当的遮罩:

[a-zA-Z0-9]{0,_} // you should replace _ with the exact length value