【问题标题】:How to prevent zeros from being input before non-zero digits?如何防止在非零数字之前输入零?
【发布时间】:2013-02-10 19:48:08
【问题描述】:

在 C# 中,WinForms 如何停止以下输入:

0000000000001234556

0000.123456

00000123456.123456

【问题讨论】:

    标签: c# validation textbox truncation


    【解决方案1】:

    如果你想要 1234556 而不是 000000001234556
    然后您可以将其转换为 Int,Double 或您想要的任何其他数据类型

    第二个选项是使用keypress 事件

    private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
        {
            if (e.KeyCode == ascii of 0)
            {
                e.Handled = false;
            }
        }
    

    【讨论】:

      【解决方案2】:

      您可以覆盖KeyPress 事件并定义一个状态,如果输入 == '0' 则忽略,否则等待非零输入。然后将状态更改为接受 0。

      既然你不显示代码,我也不显示

      【讨论】:

        【解决方案3】:

        您可以向KeyDownKeyPress 事件添加事件处理程序。在事件处理程序中检查 KeyEventArgs KeyCode 是否为 0 以及 TextBox.Text 属性的长度是否为 0。如果是,请将 KeyEventArgs Handled 属性设置为 false。

        【讨论】:

          猜你喜欢
          • 2013-12-13
          • 2018-02-13
          • 2014-06-08
          • 1970-01-01
          • 2014-01-08
          • 1970-01-01
          • 1970-01-01
          • 2016-06-03
          • 1970-01-01
          相关资源
          最近更新 更多