我正在開發一個項目,我需要在整個應用程序中實現可自定義的熱鍵。有許多不同的窗體和用戶控件需要實現不同的熱鍵子集。我想在一箇中心的MessageFilter類中實現所有的處理和處理。我想擁有一個基類,它擁有所有熱鍵的方法,然後在每個窗體/控件中重寫需要的子集的子集,但我無法弄清楚如何讓所有的窗體和用戶控件共享一個基類。這將允許我做這樣的事情來處理熱鍵:實現集中式熱鍵處理/處理
public bool PreFilterMessage(ref Message m)
{
HotKeyAction action = GetActionForKey(keydata);
BaseClass instance = GetBaseClassFromFocusedFormOrControl();
switch (action)
{
case HotKeyAction.Action1: instance.Action1() break;
}
}
我在想關於這個錯誤的方式?