C# 实现集中式热键处理/处理
我正在进行一个项目,需要在整个应用程序中实现可定制的热键。有许多不同的表单和用户控件需要实现不同的热键子集。我想在一个中央MessageFilter类中实现所有的处理和处理 我希望有一个基类,它具有用于所有热键的方法,然后只覆盖每个表单/控件中所需热键的子集,但我不知道如何让所有表单和用户控件共享一个基类。这将允许我执行类似的操作来处理热键:C# 实现集中式热键处理/处理,c#,.net,hotkeys,imessagefilter,C#,.net,Hotkeys,Imessagefilter,我正在进行一个项目,需要在整个应用程序中实现可定制的热键。有许多不同的表单和用户控件需要实现不同的热键子集。我想在一个中央MessageFilter类中实现所有的处理和处理 我希望有一个基类,它具有用于所有热键的方法,然后只覆盖每个表单/控件中所需热键的子集,但我不知道如何让所有表单和用户控件共享一个基类。这将允许我执行类似的操作来处理热键: public bool预过滤消息(参考消息m) { HotKeyAction action=GetActionForKey(keydata); BaseC
public bool预过滤消息(参考消息m)
{
HotKeyAction action=GetActionForKey(keydata);
BaseClass实例=GetBaseClassFromFocusedFormOrControl();
开关(动作)
{
case HotKeyAction.Action1:instance.Action1()中断;
}
}
我是不是想错了 可以将表单创建为“基类”。也就是说,您可以创建一个名为ShanesForm的表单,上面没有任何内容。将方法调用放置在此表单中,然后将该表单设置为所有其他表单的基类