C# 重写进程CMDC键#
我有覆盖TextBox ProcessCmdKey方法的代码:C# 重写进程CMDC键#,c#,winforms,C#,Winforms,我有覆盖TextBox ProcessCmdKey方法的代码: protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { switch (keyData) { case: //something to do etc etc. } return true; } 但是当我使用上面的代码时,我不能在文本框中写。是否有解决方案?如果返回true,则表示输入已被处理,不会传
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
switch (keyData)
{
case: //something to do etc etc.
}
return true;
}
但是当我使用上面的代码时,我不能在文本框中写。是否有解决方案?如果返回
true
,则表示输入已被处理,不会传递到下一个控件,返回false
,它将按预期工作
处理完所有内容后,将其传递给基本控件:
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
switch (keyData)
{
case /* whatever */:
// ...
default:
return base.ProcessCmdKey(ref msg, keyData);
}
return true;
}
是的,这比我的答案要好,我们应该总是在
覆盖中默认调用base
的方法