《我的编程笔记》C#篇-如何只向TextBox中键入数字键

private void txtId_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!(e.KeyChar >= '0' && e.KeyChar <= '9' || e.KeyChar == 8))//编码框只让输入数字键和退格键
            {
                e.Handled = true;
            }
        }

        private void txtId_Enter(object sender, EventArgs e)
        {
            txtId.ImeMode = ImeMode.Disable;//禁止输入法
        }

        private void txtId_MouseDown(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Right)//如果复制的内容不是纯数字,清除内容
            {
                try
                {
                    System.Int64.Parse("" + Clipboard.GetDataObject().GetData(DataFormats.Text));
                }
                catch (System.FormatException ex)
                {
                    Clipboard.SetDataObject("");
                }
            }

        }


C#在TextBox里禁止输入无效字符的方法

private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
   {
    if(e.KeyChar<48 || e.KeyChar>57)
    {
     e.Handled=true;//设置该次键入未能通过验证
    }
   }

C# 文本框如何控制只能输入数字

使用正则表达式做验证
if (!Regex.Match(txtAllow.Text.Trim(), "^\\d+$").Success)
{
               MessageBox.Show(this, "未输入或格式不正确,请重新输入!", "验证消息", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtAllow.Focus();
                return false;
}


放在你需要控制的text文本框代码段中

还有个更简单的方法:
try
{
   value =  convertToInt(txtAllow.Text.Trim());
}
catch()
{
}
不太清楚语法了,但是可以用异常区判断它是否是整数


只能输入数字.

你可能感兴趣的:(编程,object,正则表达式,C#,输入法,textbox)