• C#控制台限制只能输入数字|小数点,WinForm限制控件TextBox只能输入数字|小数点


    一、控制台限制只能输入数字

    static void Main(string[] args)
            {
                Console.WriteLine("本控制台程序为演示只能输入数字功能");
                Console.WriteLine("请输入数值:");
    
                var Falg = true;
                var InputValue = "";
                while (Falg)
                {
                    if (Console.KeyAvailable)
                    {
                        ConsoleKeyInfo key = Console.ReadKey(true);
                        if (!char.IsDigit(key.KeyChar) && key.KeyChar != '\b' && key.KeyChar != '\r') continue;
                        if (key.KeyChar == '\r' && InputValue.Trim() == "") continue; //禁止第一个字符就换行
                        if (key.KeyChar == '\r')
                        {
                            Falg = false;
                            continue;
                        }
                        else
                        {
                            Console.Write(key.KeyChar);
                            InputValue += key.KeyChar;
                        }
    
                    }
                }
                Console.WriteLine();
                Console.WriteLine("输入的数字是:{0}", InputValue);
                Console.ReadKey();
            }

    二、控制台限制只能输入数字|小数点

    static void Main(string[] args)
            {
                Console.WriteLine("本控制台程序为演示只能输入数字|小数点功能");
                Console.WriteLine("请输入数值:");
    
                var Falg = true;
                var InputValue = "";
                while (Falg)
                {
                    if (Console.KeyAvailable)
                    {
                        ConsoleKeyInfo key = Console.ReadKey(true);
                        if (!char.IsDigit(key.KeyChar) && key.KeyChar != '\b' && key.KeyChar != '\r' && key.KeyChar != '.') continue;
                        if (key.KeyChar == '\r' && InputValue.Trim() == "") continue; //禁止第一个字符就换行
                        if (key.KeyChar == '.' && InputValue.Trim() == "") continue; //禁止第一个字符就输入小数点
                        if (key.KeyChar == '0' && InputValue.Trim() == "") continue; //禁止第一个字符就输入0
                        if (key.KeyChar == '.' && InputValue.Contains(".")) continue; //禁止输入多个小数点
                        if (key.KeyChar == '\r')
                        {
                            if (InputValue.Substring(InputValue.Length - 1, 1) == ".")
                            {
                                continue;//禁止小数点后就换行
                            }
                            Falg = false;
                            continue;
                        }
                        else
                        {
                            Console.Write(key.KeyChar);
                            InputValue += key.KeyChar;
                        }
    
                    }
                }
                Console.WriteLine();
                Console.WriteLine("输入的数字是:{0}", InputValue);
                Console.ReadKey();
            }

    三、限制TextBox控件只能输入数字(其他部分输入内容控件均可适用以下代码)

    private void txtBoxPress_KeyPress(object sender, KeyPressEventArgs e)
            {
                if (!char.IsDigit(e.KeyChar) && e.KeyChar != '\b')
                {
                    e.Handled = true;  //非以上键则禁止输入
                }
                if (e.KeyChar == '0' && txtBoxPress.Text.Trim() == "") e.Handled = true; //禁止第一个字符就输入0
                
            }

    四、限制TextBox只能输入数字|小数点

    private void txtBoxPress_KeyPress(object sender, KeyPressEventArgs e)
            {
                if (!char.IsDigit(e.KeyChar) && e.KeyChar != '\b' && e.KeyChar != '.')
                {
                    e.Handled = true;  //非以上键则禁止输入
                }
                if (e.KeyChar == '0' && txtBoxPress.Text.Trim() == "") e.Handled = true; //禁止第一个字符就输入0
                if (e.KeyChar == '.' && txtBoxPress.Text.Trim() == "") e.Handled = true; //禁止第一个字符就输入小数点
                if (e.KeyChar == '.' && txtBoxPress.Text.Contains(".")) e.Handled = true; //禁止输入多个小数点
            }

    这里是输入框,只做了部分能够规避的操作性问题,至于输入值是否还会有其他问题,请大家多多交流。

  • 相关阅读:
    存储过程的设计规则
    企业管理器里删除不需要的注册
    SQL Server 大数据量插入和索引关系
    【2011520】无法使用主机名连接数据库
    SQL Server 查看存储过程
    SQL Server dbcc inputbuffer
    如何选择行版本的隔离级别
    ObjectiveC中Selector基本概念和操作
    Objectivec的@property 详解
    objectivec 关键字和概念
  • 原文地址:https://www.cnblogs.com/wl192/p/16003289.html
Copyright © 2020-2023  润新知