C#WinForm hook在propertygrid文本框中输入密钥

时间:2015-10-27 08:36:11

标签: c# winforms keydown propertygrid

我已将文本框挂钩到属性网格中,如下所示

private void SetupKeyDownHookForPropertyGrid(PropertyGrid targetGrid, bool shouldHook)
{
    foreach (Control control in targetGrid.Controls)
    {
        if (control.GetType().Name == "PropertyGridView")
        {
            foreach (Control realControl in control.Controls)
            {
                if (realControl.GetType().Name == "GridViewEdit")
                {
                    TextBox targetTextBox = realControl as TextBox;
                    // hookKeyDown is a callback function
                    targetTextBox.KeyDown += hookKeyDown;
                }
            }
        }
    }
}

我可以成功挂钩用户按下的任何键,但Enter键除外(它将直接更新所选对象的属性)。

似乎KeyDown事件没有调度到文本框,而是由一些顶级的propertygrid控件处理。

是否有任何解决方案可以将Enter键按在PropertyGrid的文本框中?

谢谢!

0 个答案:

没有答案