2010-09-15 94 views
2

我想驗證TextBox的輸入是二進制數。僅限二進制數字文本框

我知道我可以用RegEx做到這一點,但我想要一個更「中間」的驗證,就像只允許輸入1和0一樣。

我想過使用MaskedTextBox,但我不知道如何只允許這兩個字符。

回答

5

實現KeyPress事件。設置e.Handled = true,如果你不喜歡這個鍵:

private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { 
     // Allow backspace, 0 and 1 
     e.Handled = !("\b01".Contains(e.KeyChar)); 
    } 
+1

+1我不喜歡'MaskedTextBox',用戶無法複製粘貼。順便說一句,爲什麼不只是'e.Handle =!(「01」.Contains(e.KeyChar)|| e.KeyChar == 8)'。 – 2010-09-15 04:10:40

+0

非常簡單的答案,謝謝。 – 2010-09-15 12:24:02