winform中限制非数字输入

来源:互联网 发布:黄海海战知乎 编辑:程序博客网 时间:2024/06/05 20:51
/// <summary>        /// 验证非数字        /// </summary>        /// <param name="sender"></param>        /// <param name="e"></param>        private void NumBoxValid(object sender, KeyPressEventArgs e)        {            int code = e.KeyChar;            //8是退格,46是小数点            if (code == 8)            {                return;            }            if (code == 46)            {                //看是否已经有小数点了                string s = ((TextBox)sender).Text.Trim();                if (s == "")                {                    e.Handled = true;//如果开头就是小数点,也不行                }                if (s.Contains("."))                    e.Handled = true;//如果已经有小数点,则不许再用小数点                return;            }            if (!(code > 47 && code < 58))            {                e.Handled = true;            }            //如果是优惠金额多于应付金额            if (((TextBox)sender).Name == "yhAmount")            {                decimal yh = yhAmount.Text.Trim() == "" ? 0 : Convert.ToDecimal(yhAmount.Text.Trim());                decimal yf = Convert.ToDecimal(yinfuAmount.Text.Trim());                if (yh > yf)                {                    e.Handled = true;                }            }        }

原创粉丝点击