Masked Textbox的问题

时间:2013-07-08 23:15:09

标签: c# winforms

我问过如何格式化文本框以仅接受数字,但建议使用蒙面文本框并设置蒙版属性,但这样做我遇到了一些问题

1)屏蔽文本框需要用户可以键入的最大数据量,但我希望用户能够输入无限数据

2)蒙版文本框显示下划线

Underscore

我如何删除这个?

如果这个问题结构不合理,那么任何帮助都会感激不尽

2 个答案:

答案 0 :(得分:1)

默认情况下,MaskedTextbox的PromptChar设置为" _" (下划线)。只需将其PromptChar属性更改为" " (空间)

答案 1 :(得分:1)

您可以使用常规文本框并只处理KeyPressed事件。这也会阻止复制和粘贴,这是从其他帖子How do I make a textbox that only accepts numbers?获取的。

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    if (!char.IsControl(e.KeyChar) 
        && !char.IsDigit(e.KeyChar) 
        && e.KeyChar != '.')
    {
        e.Handled = true;
    }
}