C# 仅二进制数字文本框
我想验证文本框的输入是否为二进制数 我知道我可以用正则表达式实现这一点,但我想要一个更“中间”的验证,比如只允许输入1和0C# 仅二进制数字文本框,c#,.net,winforms,C#,.net,Winforms,我想验证文本框的输入是否为二进制数 我知道我可以用正则表达式实现这一点,但我想要一个更“中间”的验证,比如只允许输入1和0 我曾想过使用MaskedTextBox,但我不知道如何只允许这两个字符。没有办法使用它 这向您展示了实现这一点的方法(只需调整代码以仅解析0和1): 执行按键事件。如果您不喜欢该键,请将e.Handled设置为true: private void textBox1_KeyPress(object sender, KeyPressEventArgs e) {
我曾想过使用MaskedTextBox,但我不知道如何只允许这两个字符。没有办法使用它 这向您展示了实现这一点的方法(只需调整代码以仅解析0和1):
执行按键事件。如果您不喜欢该键,请将e.Handled设置为true:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e) {
// Allow backspace, 0 and 1
e.Handled = !("\b01".Contains(e.KeyChar));
}
+1我不喜欢
MaskedTextBox
,用户无法复制粘贴。顺便说一句,为什么不干脆e.Handle=!(“01”.Contains(e.KeyChar)| | e.KeyChar==8)
。