1

我有下面的代码。有个小问题,当我在“.”后面输入两个以上的数字时,它会一直提示我(“不超过两位小数。”)...

当我有 .XX 并单击退格键时,它也会提示我消息。

如何自动擦除“。”之后的第三个数字?

private void textbox1_PreviewKeyDown(object sender, KeyEventArgs e)
{
    if (e.Key == Key.Space)
    {
        MessageBox.Show("No space allowed.");
        e.Handled = true;
    }
    string[] array = textbox1.Text.Split(new char[] { '.' });
    if (array.Length == 2)
    {
        if (array[1].Length == 2)
        {
            MessageBox.Show("No more than two decimal places.");
            e.Handled = true;
        }
    }
}
4

1 回答 1

1

我用了

if (e.Key != Key.Back)

停止退格问题。

现在没事了。

于 2012-06-08T06:52:47.913 回答