如何在文本框中将删除的字符替换为0

时间:2014-01-28 10:03:22

标签: c# winforms

在winforms中,如何用零替换已删除的字符。例如12.45在文本框中。如果我们在小数点后删除,它应该变成12.00。如果在前面删除,同样的方式,000.45。默认值应为000.00。

2 个答案:

答案 0 :(得分:1)

使用MaskedTextBox并将Mask属性设置为0.00PromptChar属性为0 - 这应该会让您的行为接近您所看到的对于。

但是,如果您的值为3.22并且您删除3其他数字将向左移动,则会有一个轻微的怪癖,因此该值将变为2.20而您可能会期望价值变为0.22

我认为如果你想要那种控制,你需要通过处理控件上的按键事件来实现自定义。

答案 1 :(得分:0)

试试这个

private void textBox2_KeyDown(object sender, KeyEventArgs e)
{
   if (e.KeyCode == Keys.Enter) 
   { 
     textBox2.Text = String.Format("{0:000.00}", Convert.ToDouble(textBox2.Text));
   }
}