让enter键功能和Tab键一样

来源:互联网 发布:淘宝卖家怎么查看粉丝 编辑:程序博客网 时间:2024/05/22 06:28
 //
        //
        // 参数:
        //   msg:
        //     通过引用传递的 System.Windows.Forms.Message,它表示要处理的窗口消息。
        //
        //   keyData:
        //     System.Windows.Forms.Keys 值之一,它表示要处理的键。
        //
        // 返回结果:
        //     如果字符已由控件处理,则为 true;否则为 false。
        protected override bool ProcessCmdKey(ref Message msg, Keys keyData);
        //
        //
        // 参数:
        //   charCode:
        //     要处理的字符。
        //
        // 返回结果:
        //     如果字符已由控件处理,则为 true;否则为 false。
        [EditorBrowsable(EditorBrowsableState.Advanced)]
        protected override bool ProcessDialogChar(char charCode);
        //
        //
        // 参数:
        //   keyData:
        //     System.Windows.Forms.Keys 值之一,它表示要处理的键。
        //
        // 返回结果:

        //     如果键已由控件处理,则为 true;否则为 false。

 protected override bool ProcessDialogKey(Keys keyData);

1.重写ProcessCmdKey

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
        {
            if (Keys.Enter == keyData)
            {
                SendKeys.Send("\t");
            }
            return base.ProcessCmdKey(ref msg, keyData);
        }


2.重写ProcessDialogKey

 protected override bool ProcessDialogKey(Keys keyData)
        {
            if (keyData == Keys.Enter)
            {
                keyData = Keys.Tab;
            }
            return base.ProcessDialogKey(keyData);
        }