怎样限制某些文本不被输入到 TextBox 控件?private void txtCurrentChipValue_KeyDown(object sender, KeyEventArgs e)
{ //如果使TextBox 控件中输入的不是数字,则使此次输入无效。
if (e.KeyCode < Keys.D0 ||
(e.KeyCode > Keys.D9 && e.KeyCode < Keys.NumPad0) ||
e.KeyCode > Keys.NumPad9)
{
//在这里应加入什么样的处理代码?
}
}
{ //如果使TextBox 控件中输入的不是数字,则使此次输入无效。
if (e.KeyCode < Keys.D0 ||
(e.KeyCode > Keys.D9 && e.KeyCode < Keys.NumPad0) ||
e.KeyCode > Keys.NumPad9)
{
//在这里应加入什么样的处理代码?
}
}
就是这样....
正解
bool key = false;
private void textBox4_KeyDown(object sender, KeyEventArgs e)
{
key = false;
if (e.KeyCode < Keys.D0 ¦ ¦
(e.KeyCode > Keys.D9 && e.KeyCode < Keys.NumPad0) ¦ ¦
e.KeyCode > Keys.NumPad9)
{
key = true;
}
} private void textBox4_KeyPress(object sender, KeyPressEventArgs e)
{
if (key)
{
e.Handled = true;
}
}
//下面的示例确定用户是否按下了非数字键,如果是,则通过使用 Handled 属性取消 KeyPress 事件。 private bool nonNumberEntered = false;
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
nonNumberEntered = false;
if ((e.KeyCode < Keys.D0) || (e.KeyCode > Keys.D9 && e.KeyCode < Keys.NumPad0) || (e.KeyCode > Keys.NumPad9))
{
if (e.KeyCode != Keys.Back)
{
nonNumberEntered = true;
}
}
} private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (nonNumberEntered)
{
e.Handled = true;
}
}