C# Winform只能输入数字的TextBox---补充
2009-07-26 10:50
435 查看
原代码:
修改的代码:
/article/5272298.html
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if(!char.IsDigit(e.KeyChar)) e.Handled = true;
//'\b'是退格键值
if(e.KeyChar=='\b'||e.KeyChar=='.') e.Handled = false;
}
以上代码是无法限制全角数字输入的.而在项目中全角数字是不能算真正的数字,因为在参加计算时全角可能会出错.{
if(!char.IsDigit(e.KeyChar)) e.Handled = true;
//'\b'是退格键值
if(e.KeyChar=='\b'||e.KeyChar=='.') e.Handled = false;
}
修改的代码:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
//全角占一个汉字,半角点半个汉字,所以在字节上是不同的
//全角数字"KeyChar"=2,半解数字"KeyChar"=1
byte[] array = System.Text.Encoding.Default.GetBytes(e.KeyChar.ToString());
//array.LongLength,而不是array.Length
if (!char.IsDigit(e.KeyChar)|| array.LongLength==2) e.Handled = true;
//'\b'是退格键值
if (e.KeyChar == '\b' || e.KeyChar == '.') e.Handled = false;
}
{
//全角占一个汉字,半角点半个汉字,所以在字节上是不同的
//全角数字"KeyChar"=2,半解数字"KeyChar"=1
byte[] array = System.Text.Encoding.Default.GetBytes(e.KeyChar.ToString());
//array.LongLength,而不是array.Length
if (!char.IsDigit(e.KeyChar)|| array.LongLength==2) e.Handled = true;
//'\b'是退格键值
if (e.KeyChar == '\b' || e.KeyChar == '.') e.Handled = false;
}
/article/5272298.html
相关文章推荐
- [Winform]TextBox中只能输入数字的几种常用方法(C#)
- C#-WinForm-TextBox中只能输入数字的几种常用方法(C#)
- [Winform]TextBox中只能输入数字的几种常用方法(C#)
- Winform TextBox中只能输入数字的几种常用方法(C#)
- Winform TextBox中只能输入数字的几种常用方法(C#)
- Winform TextBox中只能输入数字的几种常用方法(C#)
- Winform TextBox中只能输入数字的几种常用方法(C#)
- c# winform 让textbox中只能输入int64位的数字
- C#的winform中控制TextBox中只能输入数字(加上固定位数和首位不能为0)
- Winform TextBox中只能输入数字的几种常用方法(C#)
- C#的winform中控制TextBox中只能输入数字?
- [c#笔记]Winform TextBox中只能输入数字的几种常用方法(C#)
- C# winform textbox只能输入数字
- Winform TextBox中只能输入数字的几种常用方法(C#)
- Winform TextBox中只能输入数字的几种常用方法(C#)
- C#中winform控制textbox输入只能为数字的方法
- C#Winform限制Textbox只能输入数字
- C#Winform限制Textbox只能输入数字
- C#Winform限制Textbox只能输入数字
- C#Winform限制Textbox只能输入数字