在WinForms应用程序中检测ctrl+left click

17

如何在Windows窗体应用程序中检测用户按住Ctrl键并单击按钮的操作?


1
如果这个问题问得更好一些,我会点赞的——答案很有用,而且谷歌也找到了这个问题,但是......加上几个词可能会更好。 - Code Jockey
1
@CodeJockey,你可以编辑问题,让它更好地服务于所有人。然后点赞。 :-) - DGaleano
1个回答

45
你需要检查Form.ModifierKeys的值以查看Control是否被按下,例如:
    btn.Click += new EventHandler(btn_Click);

    private void btn_Click(object sender, EventArgs e)
    {
        if (Form.ModifierKeys == Keys.Control)
        {
            // Do Ctrl-Left Click Work
        }
    }

1
小心!ModifierKeys是一个位域,如果同时按下多个修改键,则可以设置多个位。只有在单独按下Control键时,此代码才能正常工作。 - McKenzieG1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接