C#设置textBox只能输入数字(正数,负数,小数)简单实现

/*
       *设置textBox只能输入数字(正数,负数,小数)
       */
        public static bool NumberDotTextbox_KeyPress(object sender, KeyPressEventArgs e)
        {
            //允许输入数字、小数点、删除键和负号
            if ((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8 && e.KeyChar != (char)(‘.‘) && e.KeyChar != (char)(‘-‘))
            {
                return true;
            }
            if (e.KeyChar == (char)(‘-‘))
            {
                if ((sender as TextBox).Text != "")
                {
                    return true;
                }
            }
            //小数点只能输入一次
            if (e.KeyChar == (char)(‘.‘) && ((TextBox)sender).Text.IndexOf(‘.‘) != -1)
            {
                return true;
            }
            //第一位不能为小数点
            if (e.KeyChar == (char)(‘.‘) && ((TextBox)sender).Text == "")
            {
                return true;
            }
            //第一位是0,第二位必须为小数点
            if (e.KeyChar != (char)(‘.‘) && e.KeyChar != 8 && ((TextBox)sender).Text == "0")
            {
                return true;
            }
            //第一位是负号,第二位不能为小数点
            if (((TextBox)sender).Text == "-" && e.KeyChar == (char)(‘.‘))
            {
                return true;
            }

            return false;
        }

        public static bool NumberTextbox_KeyPress(KeyPressEventArgs e)
        {
            if (e.KeyChar != ‘\b‘)//这是允许输入退格键
            {
                if ((e.KeyChar < ‘0‘) || (e.KeyChar > ‘9‘))//这是允许输入0-9数字
                {
                    return true;
                }
            }

            return false;
        }

  

时间: 2024-12-23 23:49:14

C#设置textBox只能输入数字(正数,负数,小数)简单实现的相关文章

android 设置EditText只能输入数字

android:numeric="integer" 设置EditText只能输入数字 <EditText android:id="@+id/edit_text" android:layout_width="106dp" android:layout_height="50dp" android:numeric="integer" />

Asp.net TextBox只能输入数字

原文:Asp.net TextBox只能输入数字 <asp:textbox id="TextBox1" onkeyup="if(isNaN(value))execCommand('undo')" runat="server" Width="80px" onafterpaste="if(isNaN(value))execCommand('undo')"></asp:textbox> 其

wpf 限制textbox只能输入数字及特殊键

原文:wpf 限制textbox只能输入数字及特殊键 使用vs2015进行wpf设计时,发现限制输入数字时,Keydown事件无法检测到空格的输入,后经过查资料调试,发现PreviewKeyDown可以满足检测输入所有值合法性的要求,我的textbox输入框中只允许输入(大小键盘中)的数字0-9,以及删除回车,左右方向键,tab键,删除键,下面代码为限制 private void MinSpaceTextBox_PreviewKeyDown(object sender, KeyEventArgs

Asp.net控制TextBox只能输入数字

在Asp.net开发中,为了确保数据的正确性,经常要对用户输入的内容进行验证,比如说用户只能输入数字,不能输入中文和英文,这如何实现呢?下面我们来看看.    实现过程,在TextBox控件中加两个属性事件:<asp:TextBox ID="txtName" runat="server" Width="175px" style="ime-mode:disabled" onkeypress="if (event.

winform 中TextBox只能输入数字

textBox1.KeyPress+=TextNumber_KeyPress; private void TextNumber_KeyPress(object sender, KeyPressEventArgs e) { var tb = (TextBox) sender; if (e.KeyChar != Convert.ToChar(13)) { if (e.KeyChar != 8 && !char.IsDigit(e.KeyChar)) { MessageShow("只能

ios设置textField只能输入数字用于电话号码

首先在.xib中将UITextField的Keyboard设置为Number Pad,但是使用时键盘会切回别的键盘无法对内容进行校验.通过神奇的百度我知道了通过以下方法可以解决这样的问题: 首先让.xib的viewController实现UITextFieldDelegate然后和想要校验的控件关联. 以上是xib,如果是代码设置的 就不要考虑还是那个面部分 然后将下列代码粘贴到类中即可. - (BOOL)textField:(UITextField *)textField shouldChan

UWP textbox 只能输入数字

private void Testbox_TextChanged(object sender, TextChangedEventArgs e) {    var textbox = (TextBox)sender;    if (!Regex.IsMatch(textbox.Text, "^\\d*\\.?\\d*$") && textbox.Text != "")   {     int pos = textbox.SelectionStart -

C# TextBox 只能输入数字

private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { TextBox txt = sender as TextBox; //屏蔽非法按键,只能输入小数 if ((e.KeyChar >= '0' && e.KeyChar <= '9') || e.KeyChar == '-' || e.KeyChar == '.' || e.KeyChar == 8) { if (txt.Text.Contai

wpf textbox只能输入数字,屏蔽中文输入

1.设置textbox属性InputMethod.IsInputMethodEnabled="False" 2.增加KeyDown事件 private void TextBox_KeyDown(object sender, KeyEventArgs e) { #region --对输入中文就没办法屏蔽,可以在Textbox添加属性InputMethod.IsInputMethodEnabled="False"-- //屏蔽非法按键 if (e.Key >= K