代码之家  ›  专栏  ›  技术社区  ›  hydrogen

如何让ContextMenuStrip显示在NotifyIcon的左键单击上?

  •  3
  • hydrogen  · 技术社区  · 14 年前

    我有一个ContextMenuStrip分配给一个NotifyIcon,右键单击就可以了。

    如何连接鼠标单击事件以通知NotifyIcon显示其ContextMenuStrip?

    private void taskbarIcon_MouseClick(object sender, MouseEventArgs e)
    {
        switch (e.Button)
        {
            case MouseButtons.Left:
                // What could I use here?
                break;
            default:
                break;
        }
    }
    
    1 回复  |  直到 14 年前
        1
  •  10
  •   Mikael Koskinen    14 年前

    您应该能够使用以下代码:

    if (e.Button == MouseButtons.Left)
    {
       MethodInfo mi = typeof(NotifyIcon).GetMethod("ShowContextMenu", 
                BindingFlags.Instance |BindingFlags.NonPublic);
        mi.Invoke(taskbarIcon, null);
    }
    

    Here's a good thread 关于MSDN网站上的主题。