单击menustrip时,禁用"要求"以双击未聚焦的窗口

8 c# winforms

很抱歉这个奇怪的标题,我正在玩WinForms,我想知道是否有任何方法可以让你不必"双击"窗口激活menustrip中的项目窗户没有聚焦?

目前,如果窗口未聚焦,我首先必须单击窗口以使其聚焦,然后再次单击menustrip项目,即使我的鼠标从一开始就悬停在menustrip项目上方.

提前致谢!

Det*_*mar 9

尝试将此函数放在Form类中:

protected override void WndProc(ref Message m) {
    int WM_PARENTNOTIFY = 0x0210;
    if (!this.Focused && m.Msg == WM_PARENTNOTIFY) {
        // Make this form auto-grab the focus when menu/controls are clicked
        this.Activate();
    }
    base.WndProc(ref m);
}
Run Code Online (Sandbox Code Playgroud)