我有一个文本编辑器,需要将其输入限制为以下类型的格式:
小数点后最多 3 位。整数部分不是必需的。
我发现的最接近的是带有
MaskType = Numeric
面具的 ###.###
。但是,这不接受全零,这是一个要求。
有什么建议吗?
ADD:我正在考虑
0{0,3}\.0{0,3}
和 MaskType = RegEx
。这是一个合适的选择吗?
看起来您已经回答了自己的问题。你的正则表达式看起来不错。
如果您也打算允许非零值,例如 12.345 或 001.010,那么掩码应该是
[0-9]{0,3}\.[0-9]{0,3}
。
检查 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;
}