我在C#Windows应用程序中使用一个RichTextBox。我需要限制用户在某些条件下从键盘输入任何键。所以,我在KeyDown
的{{1}}事件中编写了以下代码行:
RichTextBox
这适用于英语美式键盘。但是当我将区域设置更改为韩语并将键盘语言更改为韩语时,即使执行上述语句,我也可以输入韩语字符(如?????)。
即使我尝试使用以下代码
private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
{
e.SuppressKeyPress = true;
}
但徒劳无功。
如何使用所有键盘布局来抑制输入?
答案 0 :(得分:0)
您想要实际抑制键,还是要阻止用户编辑文本?
使用richTextBox1.ReadOnly = true;
您的代码可能无法正常工作,因为通过IME输入不会算作按键。
另一种方法是尝试阻止WM_CHAR
/ KeyPress
处理程序。