【问题标题】:Is there a form Level Method or Event that fires after the keyDown event of focused control not before?是否有一个表单级别方法或事件在焦点控制的 keyDown 事件之后而不是之前触发?
【发布时间】:2014-11-19 09:06:21
【问题描述】:

以下方法在事件解析为焦点控件之前发生。

  protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
    {
        return base.ProcessCmdKey(ref msg, keyData);
    }

我想要与此方法完全相反的方法,我的意思是我想要在子控件的 KeyDown 事件之后发生的方法或事件。

【问题讨论】:

标签: c# .net keydown keystroke


【解决方案1】:

有什么理由不只存储响应,您的工作是否允许响应冒泡?

protected override bool ProcessCmdKey(ref Message msg, Keys keyData) {
    var ret = base.ProcessCmdKey(ref msg, keyData);
    DoSomething();    
    return ret;
}

如果需要,您的DoSomething() 方法可以采用msgkeyData 甚至来自base.ProcessCmdKey 的返回值。取决于你需要用它做什么。

如果这不是您想要的,您需要更好地解释“就在之后”。过了多久?

【讨论】:

  • 我想要在焦点控件的按键按下事件触发之后
  • 看来你的答案是正确的,如果有效,我会检查并标记你的答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-24
  • 1970-01-01
  • 2016-09-21
  • 1970-01-01
相关资源
最近更新 更多