这是我的代码:
private void txtAdd_KeyPress(object sender, KeyPressEventArgs e)
{
if (!(char.IsLetter(e.KeyChar)) && !(char.IsNumber(e.KeyChar)) && !(char.IsWhiteSpace(e.KeyChar)))
{
e.Handled = true;
}
}
Run Code Online (Sandbox Code Playgroud)
它允许我输入字母,数字和空格,但它不允许我做退格.请帮我.
Mat*_*ton 34
我喜欢使用!Char.IsControl(e.KeyChar),以便免除所有"控制"字符,如退格键和剪贴板键盘快捷键.
如果你只是想检查退格,你可能会逃脱:
if (e.KeyChar == (char)8 && ...)
Run Code Online (Sandbox Code Playgroud)
Wan*_*eer 18
我使用以下两个段:
这个用于将文本框限制为仅整数,但允许控制键:
if (Char.IsDigit(e.KeyChar)) return;
if (Char.IsControl(e.KeyChar)) return;
e.Handled = true;
Run Code Online (Sandbox Code Playgroud)
这个用于限制文本框加倍,允许一个'.' 只有,并允许控制键:
if (Char.IsDigit(e.KeyChar)) return;
if (Char.IsControl(e.KeyChar)) return;
if ((e.KeyChar == '.') && ((sender as TextBox).Text.Contains('.') == false)) return;
if ((e.KeyChar == '.') && ((sender as TextBox).SelectionLength == (sender as TextBox).TextLength)) return;
e.Handled = true;
Run Code Online (Sandbox Code Playgroud)
小智 5
你必须在你的句子中添加!(char.IsControl(e.KeyChar)),就是这样.
private void txtNombre_KeyPress(object sender, KeyPressEventArgs e)
{
if (!(char.IsLetter(e.KeyChar)) && !(char.IsNumber(e.KeyChar)) && !(char.IsControl(e.KeyChar)) && !(char.IsWhiteSpace(e.KeyChar)))
{
e.Handled = true;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
84451 次 |
| 最近记录: |