DevExpress XtraEditors 文本编辑蒙版

问题描述 投票:0回答:2

我有一个文本编辑器,需要将其输入限制为以下类型的格式:

  • 00.000
  • 0.000
  • 00.00
  • 0.00
  • ...

小数点后最多 3 位。整数部分不是必需的。

我发现的最接近的是带有

MaskType = Numeric
面具的
###.###
。但是,这不接受全零,这是一个要求。

有什么建议吗?

ADD:我正在考虑

0{0,3}\.0{0,3}
MaskType = RegEx
。这是一个合适的选择吗?

input devexpress mask xtraeditors
2个回答
0
投票

看起来您已经回答了自己的问题。你的正则表达式看起来不错。

如果您也打算允许非零值,例如 12.345 或 001.010,那么掩码应该是

[0-9]{0,3}\.[0-9]{0,3}


0
投票

检查 XtraEditor 的掩码类型:数字。您设置了错误的编辑掩码。在

###.###
的位置使用
000.000
。检查指定链接上的自定义掩码部分。

如果是#,输入字符串将转换为编辑器的值, 留空的数字不会存储在结果中,但如果是 0;这 留空的数字被解释为零。

private void Form1_Load(object sender, EventArgs e)
        {
            textEdit1.Properties.Mask.MaskType = MaskType.Numeric;
            textEdit1.Properties.Mask.EditMask = "000.000";
            textEdit1.Properties.Mask.UseMaskAsDisplayFormat = true;
        }
© www.soinside.com 2019 - 2024. All rights reserved.