如何在TextBox中只允许输入0或1?

Ale*_*xry 7 c# textbox

如何将TextBox控件限制为仅允许值0和1?

谢谢.我还有一个问题:如何在文本框控件中禁用剪贴板中的put文本?

Fil*_*erg 11

通过使用该事件 KeyPress

private void NumericOnlyKeyBox_KeyPress(object sender, KeyPressEventArgs e)
{
    var validKeys = new[] { Keys.Back, Keys.D0, Keys.D1 };

    e.Handled = !validKeys.Contains((Keys)e.KeyChar);
}
Run Code Online (Sandbox Code Playgroud)

设置e.Handled为true/false表示是否应该接受该字符.

您可以在MSDN上阅读有关KeyPressEventArgs的更多信息.

注意

Keys.Delete应该包括Keys.Delete,Keys.Backspace和其他"后退"按钮.

  • 更好的是:`e.Handled =(e.KeyChar == Keys.D0)|| (e.KeyChar == Keys.D1);` (7认同)
  • @abatischev,别忘了小键盘.:) (3认同)
  • 几乎没有使用if语句来设置布尔值. (2认同)

Arn*_*met 1

您可能想查看此相关问题的答案:

C# 文本框的输入验证:float