C# 如何在usercontrol中钩住TAB键,使焦点不';不要移动到另一个控件?

C# 如何在usercontrol中钩住TAB键,使焦点不';不要移动到另一个控件?,c#,.net,user-controls,C#,.net,User Controls,我有一个usercontrol,它将占据整个表单。我希望我的usercontrol能够处理TAB键的按下并执行一些操作,而不是让TAB将焦点移动到表单上的另一个控件。我正在处理usercontrol中的KeyDown事件,但当按下TAB键时它不会触发。碰巧今天早些时候我使用了这段代码来处理一些我弄乱的事情,所以我很方便。我个人会颠倒您使用的逻辑,所以:if(keyData==Keys.TAB)返回false;我建议的地图更符合我的想法。“如果键是tab,则不处理它”,而不是“如果键不是tab,则

我有一个usercontrol,它将占据整个表单。我希望我的usercontrol能够处理TAB键的按下并执行一些操作,而不是让TAB将焦点移动到表单上的另一个控件。我正在处理usercontrol中的KeyDown事件,但当按下TAB键时它不会触发。

碰巧今天早些时候我使用了这段代码来处理一些我弄乱的事情,所以我很方便。我个人会颠倒您使用的逻辑,所以:if(keyData==Keys.TAB)返回false;我建议的地图更符合我的想法。“如果键是tab,则不处理它”,而不是“如果键不是tab,则处理它”。个人偏好是全部。@BFree:要返回上一个文本框吗?我想使用VolumeUp来聚焦上一个文本框。
        protected override bool ProcessDialogKey(Keys keyData)
        {
            if (keyData != Keys.Tab)
            {
              return base.ProcessDialogKey(keyData);
            }
            return false;
        }