【发布时间】:2014-12-01 16:53:55
【问题描述】:
我有一个 C# WinForms 示例应用程序,演示了有趣的密钥处理问题。
这很简单:上面只有一个Form 和TextBox。我将TextBox ReadOnly 属性设置为true。
我的Form 中有下一个代码:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyData.HasFlag(Keys.R))
{
MessageBox.Show("There is 'R' key in KeyDown event");
}
}
}
当我按下 Ctrl-R 键时,MessageBox 不显示。但是,如果我将TextBox 的ReadOnly 属性设置为true,则会出现MessageBox。当我在ReadOnly TextBox 上按 Shift-R 或 Alt-R 时,也会发生同样的事情.
任何想法,ReadOnly TextBox 和 Ctrl-R 组合有什么特别之处?
【问题讨论】:
-
它还在
w、v、z、[、s、'、v上显示消息框 -
@Shaharyar,我知道,但这只是说明问题。
if (e.Control && e.KeyCode == Keys.R)也不起作用。
标签: c# .net winforms textbox keyboard-shortcuts